Amazon Elastic Container Service (Amazon ECS) のデプロイが失敗しても、Amazon ECS デプロイサーキットブレーカーが作動せず、デプロイがロールバックされません。
解決策
ロールバック設定が有効でも、次の問題が原因で、サーキットブレーカーがロールバックをトリガーしない場合があります。
- タスク障害のしきい値を満たしていない
- アプリケーションの問題
- ヘルスチェックパラメータの設定ミス
タスク障害のしきい値を満たしていない
サーキットブレーカーは、3 ~ 200 のしきい値範囲で動作します。1 つのタスクが失敗した直後に複数のデプロイを連続して開始すると、サーキットブレーカーのしきい値に達しない可能性があります。しきい値に達していない場合は、しきい値が満たされるまで待ちます。
注: 固定しきい値は変更できません。
アプリケーションの問題
サーキットブレーカーはタスク初期化プロセスを監視します。タスクが正常に開始し、依存ヘルスチェックに合格した後に停止した場合、サーキットブレーカーが作動しない可能性があります。アプリケーションの問題を確認するには、タスク定義の logConfiguration セクションにあるコンテナ初期化ログにエラーがないか確認します。
詳細については、「Amazon ECS タスクが停止した理由を知りたいです」を参照してください。
ヘルスチェックパラメータの設定ミス
ヘルスチェックパラメータに誤りがある場合、サーキットブレーカーのメカニズムの有効性に影響する可能性があります。
ヘルスチェックの間隔は、必ずデフォルトの 30 秒よりも低く設定してください。ヘルスチェック間隔を長くすると、失敗したタスクの検出が遅れる可能性があります。詳細については、「コンテナヘルスチェックを使用して Amazon ECS タスクの状態を判断する」を参照してください。
異常しきい値と正常しきい値のレベルがデフォルトに近いことを確認してください。しきい値レベルが高すぎたり低すぎたりすると、誤検知や検出漏れにつながる可能性があります。詳細については、「Amazon ECS でロードバランサーのヘルスチェックパラメータを最適化する」を参照してください。
関連情報
Amazon ECS のタスクヘルスとタスク置換に関する詳細