Я запускаю службу ecs, используя Fargate на AWS. Каждая задача завершает одну операцию и умирает (извлекает сообщение из очереди SQS и декодирует / кодирует видеофайл). Теперь я разработал политику автоматического масштабирования, как показано ниже,
- Если размер очереди SQS больше 5, увеличить желаемое значение до 1 (повторять каждые 60 секунд).
- Если размер очереди SQS меньше 2, уменьшите желаемое количество до 1 (повторяйте каждые 60 секунд).
Но AWS делает то, что, когда размер очереди становится меньше 2, он убивает запущенные задачи, оставляя соответствующую операцию "неработающей". Я не хочу, чтобы AWS убивал запущенные задачи (потому что они автоматически умрут в течение некоторого времени после завершения команды), а просто установил желаемое значение 0, чтобы задачи не «возродились». Так что буквально я хочу, чтобы мои задачи не прекращались во время автоматического масштабирования.
Как мне этого добиться в сервисе ECS и aws_ecs_autoscaling_target. Обратите внимание, что я использую terraform для предоставления услуги.
Заранее спасибо.