投稿日: Nov 10, 2022

Amazon Elastic Container Service (Amazon ECS) にて、ECS タスクのスケールイン保護の提供が開始されました。こちらは、長時間実行しているタスクが、スケールインイベントやデプロイによって終了することを防ぐ新機能です。ビデオトランスコーディングなどのジョブではタスクの実行に何時間もかかることがありますが、そのことはサービスの累積使用率が低い場合にも、また、実行中の作業 (再処理にはコストがかかる) が完了する前に新しいコードバージョンがデプロイされた場合にも当てはまります。タスクのスケールイン保護機能を使用すれば、こうしたキュー処理の非同期アプリケーションのオーケストレーションを簡素化できます。

Amazon ECS にはサービスのオートスケーリング機能が組み込まれているため、ポリシーを設定して、トラフィックパターンの変化に応じて ECS サービスのタスク数を必要な数に調整することが可能です。それにより、トラフィックのピーク時には高い可用性を維持し、使用率が低い時間帯にはコンピューティングコストを削減するように、アプリケーションを構築することができます。お客様から、特定のアプリケーションでは、使用率が低い時間帯やサービスのデプロイ中に、スケールインイベントによってミッションクリティカルなタスクが終了することを防ぐ仕組みが必要だ、とのご要望がありました。今後は、新しい Amazon ECS コンテナエージェントエンドポイント、または新しい Amazon ECS UpdateTaskProtection API を使用することで、オートスケーリングやデプロイイベントによってタスクが終了することを回避できます。タスクのスケールイン保護を使用すれば、長時間実行するアプリケーションのオーケストレーションを ECS で簡素化しながら、サービスのオートスケーリングによってパフォーマンス向上とコスト削減を実現でき、カスタムのツールに投資する必要がなくなります。

Amazon ECS のタスクのスケールイン保護は、Amazon ECS が提供されているすべての AWS リージョンでご利用いただけます。詳細については、デベロッパーガイドの Task scale-in protection (タスクのスケールイン保護) およびブログの記事を参照してください。