У меня в настоящее время кластер HA (с тремя несколькими мастерами, по одному на каждый AZ), развернутый на AWS через kops.Kops развертывает кластер K8S с модулем для etcd-событий и модулем для etcd-сервера на каждом главном узле.Каждый из этих модулей использует подключенный том.
Все работает хорошо, например, когда мастер умирает, группа автомасштабирования создает другой мастер-узел в том же AZ, который восстанавливает свой том и присоединяется к кластеру.У меня проблема в связи с катастрофой, выходом из строя AZ.
Что произойдет, если у AZ возникнут проблемы?Я периодически делаю снимки томов EBS, но если я создаю новый том из снимка (с правильными тегами, которые нужно обнаружить и присоединить к новому экземпляру), новый экземпляр монтирует новые тома, но после этого он не можетприсоединиться к старому кластеру.Мой план состоял в том, чтобы создать лямбда-функцию, которая была вызвана событием CloudWatch, которое создает новый главный экземпляр в одном из двух безопасных AZ с томом, смонтированным из моментального снимка старого тома EBS.Но в этом плане есть ошибки, потому что кажется, что я игнорирую что-то о Raft, Etcd и их поведении.(Я говорю это, потому что у меня есть ошибки от других главных узлов, и новый узел не может присоединиться к кластеру).
Предложения?
Как теоретически восстановитьСитуация одиночной АЗ катастрофы и ситуация, когда все мастера погибли?У меня есть снимки EBS.Достаточно ли их использовать?