Amazon ECS カナリアデプロイに必要なリソース - Amazon Elastic Container Service

Amazon ECS カナリアデプロイに必要なリソース

マネージドトラフィック移行が実施されるカナリアデプロイを使用するには、サービスが次のいずれかの機能を使用する必要があります。

  • エラスティックロードバランシング

  • Service Connect

注記

カナリアデプロイは Network Load Balancer をサポートしていません。Network Load Balancer の設定では、代わりにブルー/グリーンデプロイを使用します。

次のリストは、Amazon ECS カナリアデプロイに設定する必要がある内容について概要を示しています。

ベストプラクティス

Amazon ECS カナリアデプロイを正常に処理するには、次のベストプラクティスに従ってください。

  • アプリケーションが同時に実行されている両方のサービスリビジョンを処理できることを確認します。

  • デプロイ中に両方のサービスリビジョンを処理するため、十分なクラスターキャパシティの確保を計画します。

  • ロールバック手順は、本番環境での実装前にテストします。

  • アプリケーションの正常性を正確に反映する、適切なヘルスチェックを設定します。

  • グリーンデプロイの十分なテストを可能にするベイク時間を設定します。

  • CloudWatch アラームを実装し、問題を自動的に検出してロールバックをトリガーします。

  • ライフサイクルフックを使用し、各デプロイステージで自動テストを実行します。

  • 小さな Canary の割合 (5~10%) から始めて、問題が発生した場合の影響を最小限に抑えます。

  • 有意義なパフォーマンスデータ収集のための十分な時間を確保できる適切な評価期間を設定します。

  • 自動ロールバックトリガーの CloudWatch アラームを使用して包括的なモニタリングを実装します。

  • アプリケーションの準備状況と機能を正確に反映するヘルスチェックを設定します。

  • 評価中に、技術的メトリクス (応答時間、エラー率) とビジネスメトリクスの両方をモニタリングします。

  • アプリケーションがセッションや状態に関する問題が発生しない状態でトラフィックの分割を処理できることを確認します。

  • ロールバック手順を計画し、定期的にテストして、必要に応じて機能することを確認します。

  • チームがモニタリングして対応できる営業時間内にカナリアデプロイをスケジュール設定します。

  • カナリアデプロイを実施する前に、ステージング環境で変更を詳細に検証します。

  • 手動介入とロールバックの決定に関する明確な手順を文書化します。