DVAデプロイ
ある企業は Elastic Beanstalk を使用して EC2 インスタンス 10 台構成の Web アプリケーションを本番運用しています。次の要件をすべて満たすデプロイポリシーはどれですか?(1)デプロイ中もリクエスト処理容量を 100% 維持する、(2)デプロイに失敗した場合、最速でロールバックを完了できる
Aローリング(Rolling):バッチ単位で順次更新し、デプロイ中の容量低下を最小限に抑える
ローリングはバッチ単位で順次インスタンスを更新するため、更新中はその分だけ処理容量が低下します。容量 100% 維持という要件(1)を満たせないため不適切です。
B追加バッチによるローリング(Rolling with additional batch):追加インスタンスを起動してから順次更新し、常に 10 台分の容量を確保する
追加バッチによるローリングは追加インスタンスで容量を維持できますが、ロールバック時は旧バージョンを再デプロイする必要があり時間を要するため、最速ロールバックの要件(2)で劣ります。
Cイミュータブル(Immutable):新しい Auto Scaling グループに全インスタンスをデプロイし、問題があれば新 ASG を削除するだけで即時ロールバックできる
✓ 正解
新しい ASG に全インスタンスを起動するため元の 10 台が稼働し続け容量 100% を維持でき、問題時は新 ASG を終了するだけで再デプロイ不要の即時ロールバックが可能で、両要件を最も満たします。
Dブルー/グリーン(Blue/Green):新環境を作成して Route 53 の重み付けルーティングで切り替え、ロールバック時は DNS を戻すだけで完了する
ブルー/グリーンは独立した別環境を作成・維持するため運用コストが高く、Beanstalk の組み込みデプロイポリシーでもありません。切り替えは環境 URL(CNAME)スワップで行われ DNS 反映の遅延があり得るため、新 ASG を即時終了できるイミュータブルより素早さで劣ります。
解説
正解:
イミュータブル(Immutable):新しい Auto Scaling グループに全インスタンスをデプロイし、問題があれば新 ASG を削除するだけで即時ロールバックできる
イミュータブルデプロイでは、新しい Auto Scaling グループ(ASG)に全インスタンスが起動され、ヘルスチェック通過後に元の ASG へ統合されます。デプロイ中は元の 10 台が稼働し続けるため容量は 100% 維持されます。問題発生時は新 ASG のインスタンスを終了するだけでロールバックが完了し、再デプロイ不要なため最速です。
選択肢Aは、ローリングはバッチ単位で順次更新するため、デプロイ中に容量低下が発生し要件(1)を満たしません。
選択肢Bは、追加バッチによるローリングは容量を維持できますが、ロールバック時は旧バージョンの再デプロイが必要で、イミュータブルより時間がかかります。
選択肢Dは、ブルー/グリーンは Elastic Beanstalk の組み込みデプロイポリシーではなく、独立した別環境を新規作成・維持する必要があり運用が複雑かつ高コストです。また Beanstalk のブルー/グリーンは環境 URL(CNAME)スワップで切り替える方式で、DNS の TTL によりロールバック反映が遅れる可能性があり、新 ASG を即時終了できるイミュータブルより素早さで劣ります。
ドメイン別正答率・予想スコアでリアルタイムに実力把握
無限ノックでDVAを徹底対策。全問AI生成のオリジナル問題。
無料で演習を始める →