無限ノック › DOP 練習問題一覧 › 問題
DOPインシデントとイベントへの対応

ある企業のDevOpsチームが、CloudFormationスタックを使って本番環境にアプリケーションを継続的にデプロイしています。過去に以下の問題が発生しました: ①新しいLambda関数バージョンのエラー率がデプロイ後に急増した ②ALBターゲットグループのHealthyHostCountがデプロイ後10分以内に閾値を下回った。チームはデプロイ中または直後にこれらの問題を自動検知し、Lambda関数や追加のオーケストレーション(Step Functions等)を使わずにCloudFormation単体で自動的に前の安定した状態にロールバックする仕組みを実装したいと考えています。最も適切な実装方法はどれですか?

A
CodePipelineにManual Approvalアクションをデプロイステージの後に追加し、オペレーターがメトリクスを確認して承認またはロールバックを手動で実行する
Manual Approvalは人的判断を要し、深夜などのオフピーク時の自動対応ができません。
B
CloudFormationスタックのRollbackConfiguration(ロールバック設定)にLambdaエラー率とHealthyHostCountを監視するCloudWatchアラームのARNを指定し、MonitoringTimeInMinutes(監視時間)を設定することでアラーム発火時に自動ロールバックを実行する
✓ 正解
CloudFormation RollbackConfigurationは、スタック作成・更新時にモニタリングするCloudWatchアラームのARNと監視期間(MonitoringTimeInMinutes:最大180分)を指定するネイティブ機能です。デプロイ後の監視期間内に指定したアラームがALARM状態になると、CloudFormationが自動的に前の安定状態にロールバックします。Lambda関数やStep Functionsなどの追加コンポーネントは一切不要で、CloudFormation単体で実現できます。
C
EventBridgeルールでCloudFormationのスタック更新イベントをキャプチャし、Lambda関数がアラームステータスを確認してaws cloudformation cancel-update-stack APIを呼び出す
EventBridge + Lambdaは機能的に実現可能ですが、追加のオーケストレーションコンポーネントを使わないという要件に反します。
D
CodeDeployのBlue/Greenデプロイメント戦略を採用し、DeploymentReadyOptionのWaitTimeInMinutesとTerminateBlueInstancesOnDeploymentSuccessを設定してロールバックをCodeDeployに委任する
CodeDeploy Blue/Greenはスタックレベルの自動ロールバックをCloudFormationにネイティブ統合する本要件には適していません。

解説

CloudFormation RollbackConfigurationは、スタック作成・更新時にモニタリングするCloudWatchアラームのARNと監視期間(MonitoringTimeInMinutes:最大180分)を指定するネイティブ機能です。デプロイ後の監視期間内に指定したアラームがALARM状態になると、CloudFormationが自動的に前の安定状態にロールバックします。Lambda関数やStep Functionsなどの追加コンポーネントは一切不要で、CloudFormation単体で実現できます。 選択肢Aの Manual Approvalは人的判断を要し、深夜などのオフピーク時の自動対応ができません。 選択肢Cの EventBridge + Lambdaは機能的に実現可能ですが、追加のオーケストレーションコンポーネントを使わないという要件に反します。 選択肢Dの CodeDeploy Blue/Greenはスタックレベルの自動ロールバックをCloudFormationにネイティブ統合する本要件には適していません。

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

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

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