Travel around the world

Adobe Creek Homeowners Association, water leak report 02/25/2024

Adobe Creek Homeowners Association - Community Management Services
278 Monroe Dr. Mountain View CA 94040

The story

On February 25, 2024, at 4 p.m., we observed water on the first floor of our property. The water came from our adjacent Unit #18. With the help of another neighbour from Unit #17, we shut off the main water valve for Unit #18 to stop the water flow. The Unit #18 was under remodeling at that time, and the valves were closed because of work on the water pipes inside the unit. Someone from HOA garden workers opened public valve for Unit #18 causing the flooding in the unit that spreaded to the adjacent units.
We received permission from the owner of the the Unit#18 to gain access inside. I shut off the electrical breakers.

Read more ...

How to Create and enforce Github branch protection rules for Organization. Best Practice

git branches

We are going to enforce the Git Best Practice branch's protection rules and recommendaions for GitHub Organization repositories.

Also we will automate a proces of adding and updating teams and branch protection rules to GitHub Organization repository.

There is the same way to apply branch protection and recommendaions to private (non-organization GitHub repositories but you need to modify the automation scipts). Also some options are not available for non-organization GitHub repositories.

 

 

 

 

Read more ...

Joshua Tree National park.

Национальный парк Joshua TreeAnd once again, we make our journrey with friends, to Joshua Tree National Park

We make our way down here every year, on the last weekend of May, so that we can experience the desert heat, rock climb on real rocks, take some time away from work, and spend our time with good people. On this trip, our whole family came, along with Boris, Natasha, Yulia, Victor Zybin, Kirk + Caren, Gina + Steven, Mónica + Nuno, Brian, Maya + Steve (this is so I don't forget). 
What is Joshua Tree National Park? This is a part of the top of the Mojave Desert - a plateau resting at 1200 meters above sea level, with the temperature lower by 5-10 C, than in the lower part of Mojave Desert. 

What is the Mojave Desert. It is a small desert in North America, where many Hollywood movies were filmed. So, if you see a Hollywood movie with a desert, moon, The Martian - then it was in the Mojave Desert, since Los Angeles and Hollywood are only a one hour drive away. Top Gun was also filmed here. 

Read more ...

Как генерировать задержки и патери пакетов при передачи в сети между двумя хостаими, сетями. Такая задача стоит при необходимости тестирования клиент-серверных систем/приложений с эмуляцией влияния глобальной сети на качество передачи данных между элементами тестируемой системы. Иными словами давайте сэмулируем свойства сети Интертнет на рабочем столе, в своем работем тестовом окружении. (эмуляция плохой сети, медленная сеть, патеря пакетов, задержки, повторная передача пакетов, плохой канал связи, все вместе)

Клиент - емулятор задержек сети - серверНаиболее простым является решени на Linux машине с двумя сетевыми картами. Шлюз Gateway выступает в роли моста между двумя сетевыми интерфесами eth0 и eth1. Шлюз прозрачен для сети и может быть установлен в разрыв сети в любом сетефом окружении. Главное, что бы IP адреса его интерфейсов не конфликтовали с IP адресами сети, то есть были из другой подсети.

Опускаю установку OS Linux. Замечу только, что желательно иметь последние обновления на OS Linux. Я выбрал для установки в свойе тестовой лаборатории дистрибутив Ubuntu 12.04.4 LTS. Все далее описанные команды идут сразу после начисто установленной OS Linux подключенной к сети интерфейсом eth0 и получившей IP адрес с внутреннего DHCP сервера или статический IP. Host имеет доступ к Интернет. Предполагается, что команды подаются в терминале с клавиатуры в начале процесса. После настройки сетевых интерфейсов вы можете подключиться к Gateway по SSH или Telnet и работать удаленно.

В нашем примере мы используем следующую адресацию:
Server host: IP 10.0.0.2, Mask 255.255.255.0, GW 10.0.0.1
Client host: IP 10.0.0.3, Mask 255.255.255.0, GW 10.0.0.1
Gateway host (bridge): eth0/eth1 IP 192.168.1.10, Mask 255.255.255.0

Устанавливаем openssh, обновляемся и перезагружаемся:
sudo apt-get install ssh openssh-server
sudo apt-get update
sudo apt-get upgrade
sudo reboot



Устанавливаем компонент поддержки сетевого моста:
sudo apt-get install bridge-utils

Вносим изменения в настройки сетевых интерфейсов:
sudo cp /etc/network/interfaces /etc/network/interfaces.bak
sudo nano /etc/network/interfaces

Скопируйте тект в файл заменив имеющийся там:
# The loopback network interface
auto lo
iface lo inet loopback

# Eth0 to Eth network switch
allow-hotplug eth0
iface eth0 inet manual
   pre-up   ifconfig $IFACE up
   pre-down ifconfig $IFACE down

allow-hotplug eth1
iface eth1 inet manual
   pre-up   ifconfig $IFACE up
   pre-down ifconfig $IFACE down

# Setup an IP address for our bridge
auto br0
iface br0 inet static
  bridge_ports eth0 eth1
  address 192.168.1.10
  broadcast 192.168.1.255
  netmask 255.255.255.0

Рестартуем сетевые интерфейсы для применения изменений
sudo /etc/init.d/networking restart

После этого шлюз доступен в сети по IP адресу 192.168.1.10.

Проверяем конфигурацию сети:
ifconfig
ip addr show
brctl show


Создаем скрипт с набором правил. В скрипт можно внести весь набор правил с которыми вы хотите тестировать свойства соединения. Папку со скриптом можно хранить в домашней директории пользователя:
mkdir scripts
cd scripеы
nano script.sh


Скопируйте тект в файл:
#!/bin/bash
echo
echo Please run script with root access: sudo ./script.sh
echo
echo Curent status:
tc qdisc show dev eth0
echo
echo "Please make a choice:"
OPTIONS="Clean_Value Latency-200ms Latency-500ms Latency-1000ms Packet_Lost-20% Packet_Lost-30%
Latency-200ms_and_Packet_Lost-20% Clean_and_Exit"
select opt in $OPTIONS; do
if [ "$opt" = "Clean_Value" ]; then
tc qdisc del dev eth0 root
echo Cleared
elif [ "$opt" = "Latency-200ms" ]; then
#Remove fusion
tc qdisc del dev eth0 root
tc qdisc add dev eth0 root netem delay 200ms
echo Latency 200ms
tc qdisc show dev eth0
elif [ "$opt" = "Latency-500ms" ]; then
#Remove fusion
tc qdisc del dev eth0 root
tc qdisc add dev eth0 root netem delay 500ms
echo Latency 500ms
tc qdisc show dev eth0
elif [ "$opt" = "Latency-1000ms" ]; then
#Remove fusion
tc qdisc del dev eth0 root
tc qdisc add dev eth0 root netem delay 1000ms
echo Latency 1000ms
tc qdisc show dev eth0
elif [ "$opt" = "Packet_Lost-20%" ]; then
#Remove fusion
tc qdisc del dev eth0 root
tc qdisc add dev eth0 root netem loss 20%
echo Packet Lost 20%
tc qdisc show dev eth0
elif [ "$opt" = "Packet_Lost-30%" ]; then
#Remove fusion
tc qdisc del dev eth0 root
tc qdisc add dev eth0 root netem loss 30%
echo Packet Lost 30%
tc qdisc show dev eth0
elif [ "$opt" = "Latency-200ms_and_Packet_Lost-20%" ]; then
#Remove fusion
tc qdisc del dev eth0 root
tc qdisc add dev eth0 root netem delay 200ms 50ms loss 20%
echo Latency 200ms and Packets Lost 10%
tc qdisc show dev eth0
elif [ "$opt" = "Clean_and_Exit" ]; then
tc qdisc del dev eth0 root
echo Curent status:
tc qdisc show dev eth0
exit
else
clear
echo bad option
fi
done


Делаем скрипт запускаемым:
chmod +x script.sh

Скрипт содержить некоторый набор правил. Вы можете добавить правила необходимые вам или изменить имеющиеся.
Изменяем скрипт:
nano script.sh

Запускаем скрипт:
sudo ./script.sh

Подключайте шлюз в вашу сеть, запускайте пинг с клиента на сервер и запускайте скрипт. Выбирая значения в скрипте вы можете создавть и тестировать тест кейсы. Все.

Add comment


Security code
Refresh