無限ノック › DOP 練習問題一覧 › 問題
DOPSDLC の自動化

ある企業ではEC2インスタンス群へのアプリケーションデプロイにAWS CodeDeployのBlue/Greenデプロイメントを使用しています。新バージョンのデプロイ後にAmazon CloudWatchアラームがエラーレートの急増を検知した際、デプロイを自動的にロールバックするメカニズムを実装したいと考えています。最も運用効率が高いアプローチはどれですか?

A
CloudWatchアラームのアクションにAWS Lambda関数を設定し、Lambda関数内でCodeDeployのStopDeployment APIを呼び出してデプロイを停止しロールバックする
Lambda・CloudWatchアクション方式は、API呼び出しによる手動停止では自動ロールバック機能が実装されていません。
B
CodeDeployのデプロイグループ設定で「CloudWatchアラームによる自動ロールバック(Automatic rollback on alarm)」を有効化し、監視対象のCloudWatchアラーム名を指定する
✓ 正解
AWS CodeDeployのデプロイグループにはCloudWatchアラームをトリガーとした自動ロールバック機能がネイティブに組み込まれています。デプロイグループの設定で「アラームによるロールバック」を有効化し対象アラームを指定するだけで、アラームがALARM状態になると自動的に直前の正常なバージョンへロールバックされます。
C
Amazon EventBridgeルールでCodeDeployのデプロイイベントを監視し、エラー検知時にAWS Systems Manager Automationドキュメントを呼び出してロールバック処理を実行する
EventBridge・SSM Automation方式は、 オーバーエンジニアリングであり応答遅延やメンテナンスコストも増加します。
D
CodePipelineにAWS Lambdaアクションステージを追加し、CloudWatchアラームのステータスを定期的にポーリングしてALARM状態の場合にCodeDeploy APIを通じてロールバックを実行する
CodePipeline Lambda ポーリング方式は、定期ポーリングのため応答遅延が大きく、メンテナンスコストも高くなります。

解説

AWS CodeDeployのデプロイグループにはCloudWatchアラームをトリガーとした自動ロールバック機能がネイティブに組み込まれています。デプロイグループの設定で「アラームによるロールバック」を有効化し対象アラームを指定するだけで、アラームがALARM状態になると自動的に直前の正常なバージョンへロールバックされます。 選択肢AのLambda・CloudWatchアクション方式は、StopDeployment APIはデプロイを停止するのみで以前のバージョンへの自動復元は行われず、ロールバック処理を別途実装する必要があるため構成が複雑になります。 選択肢CのEventBridge・SSM Automation方式は、オーバーエンジニアリングであり応答遅延やメンテナンスコストも増加します。 選択肢DのCodePipeline Lambda ポーリング方式は、定期ポーリングのため応答遅延が大きく、メンテナンスコストも高くなります。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでDOPを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
← DOP の問題一覧に戻る