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

ある企業ではAmazon ECSサービスのデプロイにAWS CodeDeployのBlue/Greenデプロイメントを使用しています。Application Load Balancer(ALB)には本番リスナー(ポート443)とテストリスナー(ポート8080)の両方が設定されています。DevOpsエンジニアは、本番トラフィックを新しいタスクセット(Green環境)に切り替える前に、テストリスナーを経由して新バージョンに対する自動スモークテストをLambda関数で実行したいと考えています。AppSpecファイルのどのライフサイクルイベントフックにLambda関数を設定すべきですか?

A
BeforeInstall
BeforeInstallは新タスクセット作成前に実行されるため、テストリスナーを使ったテストはできません。
B
AfterInstall
AfterInstallはテストリスナーへのトラフィック切り替え前に実行されるため、Green環境への実際のテストが実現できません。
C
AfterAllowTestTraffic
✓ 正解
ECS Blue/GreenデプロイのAppSpecライフサイクルイベントフックの実行順序はBeforeInstall → AfterInstall → AfterAllowTestTraffic → BeforeAllowTraffic → AfterAllowTrafficです。AfterAllowTestTrafficフックは、テストリスナー(ポート8080)経由のトラフィックがGreen環境(新タスクセット)に切り替わった後、かつ本番リスナー(ポート443)のトラフィックが切り替わる前に実行されます。このフックでLambda関数を呼び出してスモークテストを実行することで、本番トラフィック移行前に新バージョンの動作確認が可能です。
D
BeforeAllowTraffic
BeforeAllowTrafficはテストリスナー経由のテスト後ですが、本番リスナーへのトラフィック切り替え直前であり、ロールバック判断に使えますがAfterAllowTestTrafficが最適です。

解説

ECS Blue/GreenデプロイのAppSpecライフサイクルイベントフックの実行順序はBeforeInstall → AfterInstall → AfterAllowTestTraffic → BeforeAllowTraffic → AfterAllowTrafficです。AfterAllowTestTrafficフックは、テストリスナー(ポート8080)経由のトラフィックがGreen環境(新タスクセット)に切り替わった後、かつ本番リスナー(ポート443)のトラフィックが切り替わる前に実行されます。このフックでLambda関数を呼び出してスモークテストを実行することで、本番トラフィック移行前に新バージョンの動作確認が可能です。 選択肢AのBeforeInstallは新タスクセット作成前に実行されるため、テストリスナーを使ったテストはできません。 選択肢BのAfterInstallはテストリスナーへのトラフィック切り替え前に実行されるため、Green環境への実際のテストが実現できません。 選択肢DのBeforeAllowTrafficはテストリスナー経由のテスト後ですが、本番リスナーへのトラフィック切り替え直前であり、ロールバック判断に使えますがAfterAllowTestTrafficが最適です。

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

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

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