Назад | Перейти на главную страницу

Как автоматически обновлять экземпляры EC2 Linux без простоев, переключаясь между двумя экземплярами?

Короче - ОС Amazon Linux или Ubuntu. Один экземпляр EC2 (или экземпляр OpsWorks?) Работает. Раз в день запускайте второй экземпляр, обновляйте его последними обновлениями безопасности, устанавливайте мое приложение. Выключение первого экземпляра. Повторять каждый день ...

AWS в документации говорится:

По умолчанию AWS OpsWorks автоматически устанавливает последние обновления во время установки ... Мы рекомендуем вам ... Создавать и запускать новые экземпляры, чтобы заменить существующие онлайн-экземпляры. Затем удалите текущие экземпляры. В новых экземплярах будет установлен последний набор исправлений безопасности во время установки.

Как автоматизировать этот процесс?

Я знаю, что могу запустить один микроэкземпляр для управления этим процессом через CLI, но я бы предпочел использовать какой-нибудь встроенный инструмент AWS, чтобы я мог получать уведомления о сбое, чтобы добавить некоторую избыточность (если экземпляр CLI выходит из строя), все продолжается для работы над новыми версиями CLI / AWS API и т. д.

Мне не хватает элегантного подхода?

Обновление: возможность использования существующего эластичного IP-адреса является предпочтительной.

Используйте экземпляры EC2 за ELB.

После запуска ваши узлы должны загрузить и установить последние обновления безопасности и выполнить любую другую настройку, необходимую для запуска вашего приложения.

Что касается выключения ваших инстансов один раз в день:

  1. Создайте второй узел EC2
  2. Подождите, пока он настроится и станет доступным
  3. Добавьте второй узел в ELB
  4. Удалите старый узел из ELB
  5. Стреляйте старым узлом в голову

Все вышеперечисленное можно тривиально автоматизировать с помощью различных API-интерфейсов AWS, возможно, даже как задание Lambda.