Q35 — AWS DOP-C02 第2章
第 35/100 問 | ← 第2章
ある企業は、AWSリージョンでWebアプリケーションをホストしています。災害復旧(DR)の目的で、第2のリージョンがDRリージョンとして設定されています。DR要件では、データがリージョン間でほぼリアルタイムでレプリケートされる必要があり、また1%のトラフィックをセカンダリリージョンにルーティングしてシステム機能の継続的な検証を行う必要があります。さらに、プライマリリージョンのサービス障害が発生した場合、トラフィックは自動的にセカンダリリージョンにルーティングされ、セカンダリリージョンはそのトラフィック量を処理できるようにスケールアウト可能である必要があります。
- A. 両リージョンでAWS Elastic Beanstalk上にアプリケーションをデプロイし、Amazon DynamoDBグローバルテーブルを用いてセッションデータを保存します。Amazon Route 53の加重ルーティングポリシーとヘルスチェックを用いて、リージョン間でトラフィックを分散します。 ✓
- B. 両リージョンでAuto Scalingグループでアプリケーションを起動し、DynamoDBを用いてセッションデータを取得します。Route 53のフェイルオーバールーティングポリシーとヘルスチェックを用いて、リージョン間でトラフィックを分散します。
- C. 両リージョンでAWS Lambdaにアプリケーションをデプロイし、Amazon API Gatewayで公開します。Amazon RDS for PostgreSQLとセッションデータのクロスリージョンレプリケーションを用います。クライアント側のロジックでWebアプリケーションをデプロイし、API Gatewayを直接呼び出します。
- D. 両リージョンでAuto Scalingグループでアプリケーションを起動し、DynamoDBグローバルテーブルをセッションデータに使用します。Amazon CloudFrontの加重配信をリージョン間で有効化します。Amazon Route 53のDNSレコードをCloudFront配信を指すように設定します。
正解: A. 両リージョンでAWS Elastic Beanstalk上にアプリケーションをデプロイし、Amazon DynamoDBグローバルテーブルを用いてセッションデータを保存します。Amazon Route 53の加重ルーティングポリシーとヘルスチェックを用いて、リージョン間でトラフィックを分散します。
解説
DR要件には、データのリアルタイムレプリケーション、1%のトラフィックをセカンダリリージョンへルーティングする機能、および障害時の自動フェイルオーバーとスケーリングが求められます。選択肢Aは、DynamoDBグローバルテーブルによるセッションデータのリアルタイム同期と、Route 53の加重ルーティング+ヘルスチェックによるトラフィック分散を提供し、すべての要件を満たします。選択肢Bのフェイルオーバールーティングは1%トラフィックの継続的ルーティングをサポートせず、リアルタイム同期も保証しません。選択肢CのRDSクロスリージョンレプリケーションは非同期であり、リアルタイム性に劣り、クライアント側ルーティングは運用複雑性を増します。選択肢DのCloudFront加重配信は、オリジンとして複数のリージョンを扱えず、Route 53との組み合わせが必須であり、不適切です。