This is an old revision of the document!
Бюджетная безотказная сеть для кластера
Реклама
Всем привет! В нашем центре обучения вы научитесь разворачивать множество различных кластеров - pacemaker/corosync, ceph, kubernetes, и, у студентов часто возникает вопрос, а что случится, если “сломается” сеть между его узлами. Давайте на этот вопрос зададим другой - как сделать так, что бы сеть между узлами кластера “не сломалась”
Техническое задание
Развернуть отказоустойчивую сеть с использованиием неуправляемых коммутаторов
Мигрировать кластер в эту сеть с минимальным временем простоя
Убедиться в отказоустойчивости решения
Запись вебинара
Методическая подготовка
Шаг 1. Что у нас есть для начала
Шаг 2. Создаем оказоустойчивую сеть
Используя
Материалы по GNS, создаем оказоустойчивую сеть: cloud
LAN и Switch1,2,3
Шаг 3. Настраиваем bonding, добавляем второй сетевой адаптер и включаем в оказоустойчивую сеть
(venv1) server:~# ansible all -f 4 -m apt -a 'pkg=ifenslave state=present update_cache=true' -i /root/kubespray/inventory/mycluster/hosts.yaml
server# cat /tmp/interfaces
...
iface bond0 inet static
address 192.168.24.22N
...
server# scp /tmp/interfaces kubeN:/etc/network/interfaces
server# ssh kubeN init 0
Удаляем на узле адаптер Vbox, добавляем его в GNS, указываем два сетевых адаптера, подключаем к Switch1,2 и запускаем
server# ssh kube1 kubectl get nodes
nodeN# ceph -s
nodeN# crm_mon
kube1:~# kubectl get pods --field-selector=status.phase!=Running -A -o wide
kube1:~# kubectl delete pod --field-selector=status.phase==Succeeded -A
kube1:~# kubectl delete pod --field-selector=status.phase==Failed -A
Шаг 4. Тестируем отказоустойчивую сеть
kube1:~# tcpdump -nniany arp
kube1:~# ip n flush all
Вернуть обратно
(venv1) server.corp24.un:~# ansible all -a 'init 0' -i /root/kubespray/inventory/mycluster/hosts.yaml
Остановить проект
Удалить все объекты из проекта
Удалить VM из GNS
Удалить проект
Откатить VM kubeN на snapshot
Запустить кластер