Q23 — AWS DOP-C02 第1章
第 23/100 問 | ← 第1章
ある企業が、複数の可用性ゾーンにまたがるWebアプリケーションを実行しています。同社はApplication Load Balancer(ALB)を使用してトラフィックをルーティングし、AWS WAFによるアプリケーション層の保護およびAmazon CloudFrontによるコンテンツ配信を行っています。同社はAWS CloudFormationテンプレートを使用してアプリケーションをデプロイしています。同社は、同一AWSアカウントおよび同一AWSリージョン内のAmazon Elastic Container Registry(Amazon ECR)リポジトリに、アプリケーションのDockerイメージを保存しています。 ある開発者エンジニアが、別のリージョンにディザスタリカバリ(DR)環境を構築する必要があります。このソリューションは、8時間以内のRTO(Recovery Time Objective)および2時間以内のRPO(Recovery Point Objective)を満たす必要があります。同社は、DockerfileからDockerイメージをビルドするのに2時間以上かかるという制約があります。
- A. CloudFormationテンプレートおよびDockerfileをDRリージョンのAmazon S3バケットにコピーします。AWS Backupを使用してAuroraの跨リージョン毎時スナップショットを自動化します。DR発生時に、最新のDockerイメージをビルドし、DRリージョンのECRリポジトリにアップロードします。最新のAuroraスナップショット、CloudFormationテンプレート、およびECRリポジトリ内のDockerイメージを使用して、新しいCloudFormationスタックを起動します。アプリケーションのDNSレコードを新しいALBを指すように更新します。
- B. CloudFormationテンプレートをDRリージョンのAmazon S3バケットにコピーします。Auroraの自動バックアップの跨リージョンレプリケーションを構成します。ECRの跨リージョンレプリケーションを構成します。DR発生時に、最新のAuroraスナップショットおよびローカルECRリポジトリ内のDockerイメージを用いたCloudFormationテンプレートで、DRリージョンに新しいCloudFormationスタックを起動します。アプリケーションのDNSレコードを新しいALBを指すように更新します。 ✓
- C. CloudFormationテンプレートをDRリージョンのAmazon S3バケットにコピーします。Amazon EventBridge Schedulerを使用して、AWS Lambda関数を毎時実行し、ECRリポジトリおよびAuroraデータベースの最新スナップショットを取得します。スナップショットおよびDockerイメージをDRリージョンにコピーします。DR発生時に、最新のAuroraスナップショットおよびローカルECRリポジトリ内のDockerイメージを用いたCloudFormationテンプレートで、DRリージョンに新しいCloudFormationスタックを起動します。
- D. CloudFormationテンプレートをDRリージョンのAmazon S3バケットにコピーします。DRリージョンに2番目のアプリケーションクラウドスタックをデプロイします。Auroraをグローバルデータベースとして再構成します。現在のリージョンで新しいアプリケーションをリリースする際には、両方のCloudFormationスタックを更新します。DNS切り替え時に、アプリケーションのDNSレコードを新しいALBを指すように更新します。
正解: B. CloudFormationテンプレートをDRリージョンのAmazon S3バケットにコピーします。Auroraの自動バックアップの跨リージョンレプリケーションを構成します。ECRの跨リージョンレプリケーションを構成します。DR発生時に、最新のAuroraスナップショットおよびローカルECRリポジトリ内のDockerイメージを用いたCloudFormationテンプレートで、DRリージョンに新しいCloudFormationスタックを起動します。アプリケーションのDNSレコードを新しいALBを指すように更新します。
解説
AWSのディザスタリカバリ設計は、RTOおよびRPOの指標を満たす必要があります。AWSのベストプラクティスによると、データベーススナップショットおよびコンテナイメージなどの重要なリソースの跨リージョンレプリケーションを事前に設定することで、復旧時間を短縮できます。選択肢Bは、Auroraの跨リージョンバックアップおよびECRの跨リージョンレプリケーションを事前に構成することで、災害発生時に最新のデータを用いて即座に新環境を起動でき、イメージビルド時間がRPOを超えるリスクを回避します。他の選択肢は、災害時のイメージ再構築(A、C)や複雑なリアルタイム同期(D)を必要とし、与えられた制約に適合しません。正しい手法は、必要なリソースをDRリージョンに事前にレプリケートして迅速な復旧を実現することです。