У нас есть экземпляры EC2, основанные на EBS, и они содержат состояние (не критическое состояние, но у них есть индексы ElasticSearch, Redis и т. Д.).
Поэтому мы хотим, если это не удастся, создать новый экземпляр, чтобы заменить его как можно более похожим (это означает использование самой последней резервной копии моментального снимка этого корневого тома EBS).
Если бы мы делали это вручную, нам пришлось бы проделать эту непростую процедуру:
Создайте новый том на основе последнего снимка корневого тома EBS;
Запустить новый экземпляр;
Отсоедините корневой том нового экземпляра;
Присоедините том, созданный на шаге 1, как корневой том для нового экземпляра;
В качестве альтернативы мы думаем, что можем создать образ (AMI) на основе последнего снимка и запустить экземпляр EC2 напрямую, используя этот AMI, и в этом случае это будет двухэтапное решение. Это предположение верно?
Но даже если мы сделаем это, насколько мы знаем, это не может быть автоматизировано, поскольку даже если мы используем Load Balancer с Auto Scaling Group, шаблон запуска не может быть настроен на автоматический выбор `` самого последнего '' снимка. для корневого тома нового экземпляра.
Что было бы лучше всего для этого сценария, учитывая требования автоматический запуск нового экземпляра, максимально похожего на текущий запущенный если не получится?
я получил Шаблон CloudFormation и пара лямбд делаю именно то, что тебе нужно. Когда вы создаете стек CloudFormation (CFN), он:
Проверьте standard-autohealing.yml
Шаблон CloudFormation из моего Репозиторий GitHub.
Надеюсь, это помогает :)