Автоматическое масштабирование удаляет запущенную задачу в службе ECS (FARGATE)

#amazon-ecs #autoscaling #aws-fargate

#amazon-ecs #автоматическое масштабирование #aws-fargate

Вопрос:

Я запускаю службу ecs с использованием Fargate на AWS. Каждая задача там завершает одну операцию и умирает (получение сообщения из очереди SQS и декодирование / кодирование видеофайла). Теперь я разработал политику автоматического масштабирования, как показано ниже,

  1. Если размер очереди SQS превышает 5, увеличьте желаемое количество до 1 (повторяйте каждые 60 секунд).
  2. Если размер очереди SQS меньше 2, уменьшите желаемое количество до 1 (повторять каждые 60 секунд).

Но что делает AWS, так это то, что когда размер очереди уменьшается ниже 2, он завершает выполнение задач, оставляя соответствующую операцию «сломанной». Я не хочу, чтобы AWS уничтожал запущенные задачи (потому что они автоматически умрут в течение некоторого времени после завершения команды), а просто установить желаемое значение 0, чтобы задачи не «возрождались». Поэтому буквально я хочу, чтобы мои задачи не могли быть остановлены во время автоматического масштабирования.

Как я могу добиться этого в службе ECS и aws_ecs_autoscaling_target. Пожалуйста, обратите внимание, что я использую terraform для предоставления службы.

Заранее спасибо.

Комментарии:

1. Вы изучали период охлаждения при автоматическом масштабировании? Установите это на 60 секунд, тогда, несмотря ни на что, не более 1 задачи будет удалено с минимальным интервалом в 60 секунд. При желаемом количестве 0 это может сработать.

2. Дэвид Дж. Эдди Проблема в том, что иногда время выполнения неопределенно. Это может занять намного больше. 🙁

Ответ №1:

Мне пришлось решать эту проблему другим подходом. Мне пришлось создать небольшую лямбда-функцию, которая запускается по сигналу cloudwatch и запускает задачу Fargate с помощью StartTask. Этот рабочий процесс хорошо подходит здесь, а не для использования политики автоматического масштабирования.

Комментарии:

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

2. У меня похожая проблема, можете ли вы поделиться своими решениями?