This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
бюджетная_безотказная_сеть_для_кластера [2025/04/08 06:52] val [Шаг 3. Настраиваем bonding, добавляем второй сетевой адаптер и включаем в оказоустойчивую сеть] |
бюджетная_безотказная_сеть_для_кластера [2025/11/16 07:36] (current) val [Шаг 3. Настраиваем bonding, добавляем второй сетевой адаптер и включаем в оказоустойчивую сеть] |
||
|---|---|---|---|
| Line 7: | Line 7: | ||
| ===== Техническое задание ===== | ===== Техническое задание ===== | ||
| - | * Развернуть отказоустойчивую сеть с использованиием неуправляемых коммутаторов | + | * Развернуть отказоустойчивую сеть с использованием неуправляемых коммутаторов |
| * Мигрировать кластер в эту сеть с минимальным временем простоя | * Мигрировать кластер в эту сеть с минимальным временем простоя | ||
| * Убедиться в отказоустойчивости решения | * Убедиться в отказоустойчивости решения | ||
| Line 13: | Line 13: | ||
| ===== Запись вебинара ===== | ===== Запись вебинара ===== | ||
| - | * Тэги: | + | * Тэги: Linux, Bond, Ethernet, Cluster, Arp, High availability |
| + | * [[https://val.bmstu.ru/unix/video/Семинар%20Бюджетная%20безотказная%20сеть%20для%20кластера%2008.04.2025.mp4]] | ||
| + | * Ютуб: https://youtu.be/-nbAgBoBVFg | ||
| + | * Рутуб: https://rutube.ru/video/private/81df082c6e6555f64708b3fb9e81a36e/?p=PJ8kXkCSd9N5tBrJ1_N9dg | ||
| + | * Вк: https://vk.com/video-2190892_456239486 | ||
| + | * Oк: https://ok.ru/specialistru/topic/157843552951665 | ||
| ===== Методическая подготовка ===== | ===== Методическая подготовка ===== | ||
| Line 50: | Line 55: | ||
| * Проверяем работоспособность узла | * Проверяем работоспособность узла | ||
| <code> | <code> | ||
| - | server# ssh kube1 kubectl get nodes | + | cmder> kubectl get nodes |
| nodeN# ceph -s | nodeN# ceph -s | ||
| Line 57: | Line 62: | ||
| </code> | </code> | ||
| - | * [[https://stackoverflow.com/questions/55072235/how-to-delete-completed-kubernetes-pod|How to delete completed kubernetes pod?]] | + | * [[Система Kubernetes#Поиск и удаление подов в нерабочем состоянии]] |
| + | ===== Шаг 4. Тестируем отказоустойчивую сеть ===== | ||
| + | |||
| + | * Удаляем отдельные линки ([[Настройка сети в Linux#Настройка bonding]]) | ||
| + | * Ждем сообщение от мониторинга ([[Сервис Prometheus]] и [[Сервис Prometheus#prometheus-alertmanager]]) | ||
| + | * Удаляем по очереди Switch1,2 (не забыть подключать к Switch3) | ||
| + | * Пробуем устроить Ethernet петлю | ||
| <code> | <code> | ||
| - | kube1:~# kubectl get pods --field-selector=status.phase!=Running -A -o wide | + | kube1:~# tcpdump -nniany arp |
| - | kube1:~# kubectl delete pod --field-selector=status.phase==Succeeded -A | + | kube1:~# ip n flush all |
| - | + | ||
| - | kube1:~# kubectl delete pod --field-selector=status.phase==Failed -A | + | |
| </code> | </code> | ||
| - | ===== Шаг 4. Тестируем отказоустойчивую сеть ===== | ||
| - | * Удаляем отдельные линки | + | ===== Вопросы ===== |
| - | * Удаляем по очереди Switch1,2 | + | |
| - | * Смотрим, что в мониторинге | + | |
| - | * Пробуем устроить Ethernet петлю | + | |
| - | ===== Вернуть обратно ===== | + | ===== Домашнее задание ===== |
| + | - Написать ansible playbook для настройки bond ifupdown | ||
| + | - Используя GNS, проверить гипотезу о возможности использования одного IP адреса двумя компьютерами | ||
| + | |||
| + | ===== Вернуть обратно ===== | ||
| + | <code> | ||
| + | (venv1) server.corp24.un:~# ansible all -a 'init 0' -i /root/kubespray/inventory/mycluster/hosts.yaml | ||
| + | </code> | ||
| - Остановить проект | - Остановить проект | ||
| + | - Удалить все объекты из проекта | ||
| - Удалить VM из GNS | - Удалить VM из GNS | ||
| - Удалить проект | - Удалить проект | ||
| - Откатить VM kubeN на snapshot | - Откатить VM kubeN на snapshot | ||
| + | - Запустить кластер | ||