Q64 — AWS DOP-C02 第2章
第 64/100 問 | ← 第2章
ある企業は、AWS CodeDeployを使用してソフトウェアデプロイを自動化しています。デプロイには以下の要件があります: ・デプロイ期間中、複数のインスタンスが通信サービスに利用可能である必要があります。これらのインスタンス間でトラフィックを負荷分散し、インスタンスが障害を起こした場合に自動的に修復される必要があります。 ・新しいリビジョンを自動デプロイするために、新しいインスタンス群を起動する必要があります。手動設定は不要です。 ・新しいインスタンス群へのトラフィックルーティングを開始する前に、デプロイ中に生成された一時ファイルを削除する必要があります。 ・デプロイが正常に完了した後、コスト削減のため、元のデプロイグループ内のインスタンスを即座に削除する必要があります。
- A. アプリケーションロードバランサーとインプレースデプロイを使用します。デプロイグループに関連付けられたAuto Scalingグループを使用します。Auto Scalingグループの自動複製オプションとCodeDeployのデフォルト設定を使用します。AWS CodeDeployに、デプロイグループ内の元のインスタンスを終了させ、アプリケーション内の「AllowTraffic」ライフサイクルフックを使用して一時ファイルを削除するよう指示します。
- B. アプリケーションロードバランサーとブルー/グリーンデプロイを使用します。デプロイグループに関連付けられたAuto Scalingグループおよびアプリケーションロードバランサーのターゲットグループを使用します。Auto Scalingグループの自動複製オプションを使用し、最小健全ホスト数を50%とするカスタムデプロイ構成を作成し、それをデプロイグループに割り当てます。AWS CodeDeployに、デプロイグループ内の元のインスタンスを終了させ、アプリケーション内の「BeforeBlockTraffic」ライフサイクルフックを使用して一時ファイルを削除するよう指示します。
- C. アプリケーションロードバランサーとブルー/グリーンデプロイを使用します。デプロイグループに関連付けられたAuto Scalingグループおよびアプリケーションロードバランサーのターゲットグループを使用します。Auto Scalingグループの自動複製オプションとCodeDeployのデフォルト設定を使用します。AWS CodeDeployに、デプロイグループ内の元のインスタンスを終了させ、アプリケーション内の「BeforeAllowTraffic」ライフサイクルフックを使用して一時ファイルを削除するよう指示します。 ✓
- D. アプリケーションロードバランサーとインプレースデプロイを使用します。デプロイグループに関連付けられたAuto Scalingグループおよびアプリケーションロードバランサーのターゲットグループを使用します。Auto Scalingグループの自動複製オプションとCodeDeployのデフォルト設定を使用します。AWS CodeDeployに、デプロイグループ内の元のインスタンスを終了させ、アプリケーション.ymlを使用して一時ファイルを削除するよう指示します。
正解: C. アプリケーションロードバランサーとブルー/グリーンデプロイを使用します。デプロイグループに関連付けられたAuto Scalingグループおよびアプリケーションロードバランサーのターゲットグループを使用します。Auto Scalingグループの自動複製オプションとCodeDeployのデフォルト設定を使用します。AWS CodeDeployに、デプロイグループ内の元のインスタンスを終了させ、アプリケーション内の「BeforeAllowTraffic」ライフサイクルフックを使用して一時ファイルを削除するよう指示します。
解説
本問は、AWS CodeDeployのデプロイタイプおよびライフサイクルフックの適用方法を問うものです。ブルー/グリーンデプロイは、ゼロダウンタイムでの更新を実現するために全新規インスタンス群を作成する手法であり、サービスの継続的可用性および自動修復要件を自然に満たします。また、Auto Scalingグループの自動複製機能により、新規インスタンスが自動的に設定されます。デプロイ中には、「BeforeAllowTraffic」ライフサイクルフックがトラフィック切り替え前に一時ファイルのクリーンアップを実行し、デプロイ成功後に元のインスタンス群をデフォルトで終了する設計により、コスト最適化が達成されます。選択肢Cは、ロードバランサー、ターゲットグループの関連付け、および標準デプロイ構成を正しく組み合わせており、すべての技術的制約を正確に満たします。