User Tools

Site Tools


бюджетная_безотказная_сеть_для_кластера

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
бюджетная_безотказная_сеть_для_кластера [2025/04/05 15:49]
val created
бюджетная_безотказная_сеть_для_кластера [2025/04/06 11:39] (current)
val [Шаг 3. Настраиваем bonding]
Line 1: Line 1:
 ====== Бюджетная безотказная сеть для кластера ====== ====== Бюджетная безотказная сеть для кластера ======
  
 +===== Реклама =====
 +
 +  * Всем привет! В нашем центре обучения вы научитесь разворачивать множество различных кластеров - pacemaker/​corosync,​ ceph, kubernetes, и, у студентов часто возникает вопрос,​ а что случится,​ если "​сломается"​ сеть между его узлами. Давайте на этот вопрос зададим другой - как сделать так, что бы сеть между узлами кластера "не сломалась"​
 +
 +===== Техническое задание =====
 +
 +  * Развернуть отказоустойчивую сеть с использованиием неуправляемых коммутаторов
 +  * Мигрировать кластер в эту сеть с минимальным временем простоя
 +  * Убедиться в отказоустойчивости решения ​
 +
 +===== Запись вебинара =====
 +
 +  * Тэги: ​
 +
 +===== Методическая подготовка =====
 +
 +===== Шаг 1. Что у нас есть для начала =====
 +
 +  * [[Мониторинг кластера Kubernetes]] или [[Решение Ceph]] или [[Пакет Pacemaker]]
 +  * [[Сети Cisco и Linux у Вас дома]]
 +
 +===== Шаг 2. Добавляем второй сетевой адаптер =====
 +
 +<​code>​
 +(venv1) server:~# ansible all -a 'init 0' -i /​root/​kubespray/​inventory/​mycluster/​hosts.yaml
 +</​code>​
 +  * Создаем проект [[Материалы по GNS]]
 +  * Добавляем в GNS VM kubeN и два сетевых адаптера
 +  * Добавляем в GNS cloud LAN и Switch1
 +
 +===== Шаг 3. Настраиваем bonding =====
 +<​code>​
 +(venv1) server:~# ansible all -f 4 -m apt -a '​pkg=ifenslave state=present update_cache=true'​ -i /​root/​kubespray/​inventory/​mycluster/​hosts.yaml
 +</​code>​
 +  * [[Настройка сети в Linux#​Настройка bonding]]
 +<​code>​
 +server# scp /​tmp/​interfaces kubeN:/​etc/​network/​interfaces
 +
 +server# ssh kubeN init 6
 +
 +server# ssh kube1 kubectl get nodes
 +</​code>​
 +
 +  * [[https://​stackoverflow.com/​questions/​55072235/​how-to-delete-completed-kubernetes-pod|How to delete completed kubernetes pod?]]
 +
 +<​code>​
 +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
 +</​code>​
 +===== Шаг 4. Настраиваем и тестируем отказоустойчивую сеть =====
 +
 +
 +
 +  * Добавляем в GNS Switch2 и подключаем cloud LAN через Switch3
 +
 +===== Вернуть обратно =====
 +
 +  - Остановить проект
 +  - Удалить VM из GNS
 +  - Удалить проект
 +  - Откатить VM kubeN на snapshot
бюджетная_безотказная_сеть_для_кластера.1743857397.txt.gz · Last modified: 2025/04/05 15:49 by val