Временная недоступность отдельных компонентов кластера
Если отдельные компоненты кластера временно недоступны, например, из-за временного отключения питания сервера, сетевой недоступности или сбоя, потребовавшего перезагрузки сервера или виртуальной машины, для восстановления не требуется пересоздание виртуальных машин или замены серверов. Доступность Ядра KUMA в этом случае определяется набором оставшихся в работе компонентов. В этот же сценарий входят сбои на сервере или виртуальной машине, которые не требуют переустановки операционной системы и которые можно оперативно устранить заменой отдельных частей или изменением конфигурации ПО.
После восстановления работы и доступности всех компонентов работоспособность кластера восстанавливается автоматически, но некоторое время выполняются переходные операции, такие как синхронизация реплик тома, в течение которых кластер остается уязвим к новым отказам других компонентов. Таким образом, синхронизация реплик томов большого объема может продолжаться несколько часов. Это время на восстановление нужно учитывать при планировании учений с преднамеренным выключением рабочих узлов.
Полный выход из строя компонентов кластера при сохранении доступности Ядра KUMA
В этом случае кластер позволяет какое-то время (до отказа следующего компонента) продолжить работу с Ядром KUMA, выбрать подходящее технологическое окно для восстановления и создать актуальную резервную копию Ядра KUMA.
Чтобы восстановить кластер:
На этом этапе можно использовать снимки виртуальных машин, сделанные до установки KUMA.
kuma_collector, kuma_correlator можно оставить по одному хосту, а в секции kuma_storage оставить один кластер хранения. Если из строя вышел хост, указанный в секции kuma_control_plane_master, то в файле инвентаря k0s.inventory.yml нужно поменять его местами с другим контроллером кластера, указанным в секции kuma_control_plane.sudo ./install.sh k0s.inventory.yml
) выберите Резервное копирование → Восстановить.Если в вашем браузере настроены уведомления, в правом верхнем углу отобразится сообщение "Восстановление Ядра KUMA выполнено".
После восстановления будет выполнен переход на страницу входа в веб-интерфейс KUMA.
sudo systemctl status <k0sworker/k0scontroller>
sudo k0s status
sudo k0s kubectl get volume -n longhorn-system -o json | jq '.items[0].status.robustness'
Статус должен быть healthy. Если статус degraded, то одна из реплик недоступна или находится в процессе восстановления.
sudo k0s kubectl get engine -n longhorn-system -o json | jq '.items[0].status.rebuildStatus'
При корректной работе восстановление не выполняется и команда не вернет никаких значений. Если команда вернет статус rebuilding, это означает, что некоторые реплики находятся в процессе восстановления. Мы рекомендуем не вносить изменения в кластер до завершения восстановления.
Восстановление кластера выполнено.
Полный выход из строя компонентов кластера при недоступности Ядра KUMA
Обязательно наличие резервной копии Ядра KUMA.
Для восстановления кластера требуется предварительно удалить используемый кластер.
Чтобы восстановить кластер:
На этом этапе можно использовать снимки виртуальных машин, сделанные до установки KUMA.
kuma_collector, kuma_correlator и kuma_storage, чтобы избежать удаления сервисов и необходимости их повторной установки.sudo ./uninstall.sh k0s.inventory.yml
kuma_worker* и kuma_control_plane*. kuma_worker* и kuma_control_plane* снова запустите uninstall.sh с6666 файлом инвентаря k0s.inventory.yml:sudo ./uninstall.sh k0s.inventory.yml
kuma_collector, kuma_correlator можно оставить по одному хосту, а в секции kuma_storage оставить один кластер хранения. Если время установки сокращать не требуется и перезапуск внешних сервисов KUMA допустим, то файл инвентаря можно использовать без изменений.
) выберите Резервное копирование → Восстановить.Если в вашем браузере настроены уведомления, в правом верхнем углу отобразится сообщение "Восстановление Ядра KUMA выполнено".
После восстановления будет выполнен переход на страницу входа в веб-интерфейс KUMA.
sudo systemctl status <k0sworker/k0scontroller>
sudo k0s status
sudo k0s kubectl get volume -n longhorn-system -o json | jq '.items[0].status.robustness'
Статус должен быть healthy. Если статус degraded, то одна из реплик недоступна или находится в процессе восстановления.
sudo k0s kubectl get engine -n longhorn-system -o json | jq '.items[0].status.rebuildStatus'
При корректной работе восстановление не выполняется и команда не вернет никаких значений. Если команда вернет статус rebuilding, это означает, что некоторые реплики находятся в процессе восстановления. Мы рекомендуем не вносить изменения в кластер до завершения восстановления.
Восстановление кластера выполнено.
В начало