Как заменить экземпляр кластера ECS ами на другой тип ами, избегая при этом времени простоя?

Компания, в которой я работаю, использует Amazon ECS.

Там сконфигурировано 5 или более производственных кластеров, и на прошлой неделе возникла проблема, и служба поддержки AWS рекомендовала нам заменить экземпляр ECS на ami на Ubuntu ECS optimized.

Я хотел бы пройтись по всем кластерам и заменить используемый в настоящее время ami оптимизированным для ecs ami, но я не уверен, каков наилучший способ решения этой задачи.

Не может быть никакого простоя любого из кластеров.

Как бы вы это сделали?

1 ответ

  1. Создайте новую конфигурацию запуска с новым AMI для кластера ECS. Убедитесь, что новые экземпляры находятся в сети и связаны с кластером.
  2. Запустите столько экземпляров контейнера ECS, сколько вам нужно. Убедитесь, что ваша стратегия размещения задач ECS отражает ваше намерение (т. Е. Что новые задачи будут размещены в новых экземплярах. Примером стратегии будет spread(attribute:ecs.availability-zone), spread(instanceId), В случае сомнений обратитесь к документации.
  3. Прекратить нежелательные экземпляры. Ваша стратегия для этого сильно зависит от вашего сервиса. Предполагая, что у вас есть веб-приложение, вы можете добавить в свою группу автоматического масштабирования хук жизненного цикла, который истощает ненужные экземпляры контейнера ECS. Есть интересная запись в блоге по этому вопросу, если вам нужны идеи.

Вы, вероятно, хотите сначала попробовать это в безопасной среде.

Другие вопросы по тегам