This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
бюджетная_безотказная_сеть_для_кластера [2025/04/05 18:51] val [Шаг 1. Что у нас есть для начала] |
бюджетная_безотказная_сеть_для_кластера [2025/04/06 11:39] (current) val [Шаг 3. Настраиваем bonding] |
||
---|---|---|---|
Line 19: | Line 19: | ||
===== Шаг 1. Что у нас есть для начала ===== | ===== Шаг 1. Что у нас есть для начала ===== | ||
- | * [[Мониторинг кластера Kubernetes]] | + | * [[Мониторинг кластера Kubernetes]] или [[Решение Ceph]] или [[Пакет Pacemaker]] |
* [[Сети Cisco и Linux у Вас дома]] | * [[Сети Cisco и Linux у Вас дома]] | ||
- | ===== Шаг 2. ... ===== | + | ===== Шаг 2. Добавляем второй сетевой адаптер ===== |
<code> | <code> | ||
- | (venv1) server.corp24.un:~# ansible all -a 'init 0' -i /root/kubespray/inventory/mycluster/hosts.yaml | + | (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> | </code> | ||
- | * [[Материалы по GNS]] | ||
* [[Настройка сети в Linux#Настройка bonding]] | * [[Настройка сети в 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 |