Q33 — AWS SAA-C03 第17章
第 33/89 問 | ← 第17章
Q1333. ある企業が、従来のデータ処理アプリケーションをAWSクラウドへ移行しようとしています。このアプリケーションは、Application Load Balancer(ALB)の背後でAmazon EC2インスタンス上で実行される必要があります。また、着信トラフィックの急増に対応できること、および1つの可用性ゾーン(Availability Zone)内でアプリケーション障害が発生した場合でも継続して動作することが求められます。さらに、Web Application Firewall(WAF)をALBにアタッチする必要があります。これらの要件を満たすソリューションはどれですか?
- A. EC2インスタンスを単一の可用性ゾーン内のAuto Scalingグループにデプロイします。Application Load Balancer(ALB)を使用してEC2インスタンス間でトラフィックを分散させます。AWS WAFを使用して、ALBにWeb ACLを関連付けます。
- B. EC2インスタンスを複数の可用性ゾーンにまたがるAuto Scalingグループにデプロイします。Application Load Balancer(ALB)を使用してEC2インスタンス間でトラフィックを分散させます。AWS WAFを使用して、ALBにWeb ACLを関連付けます。 ✓
- C. EC2インスタンスを複数のAWSリージョンにまたがるAuto Scalingグループにデプロイします。Amazon Route 53のレイテンシーベースルーティングを使用して、Auto Scalingグループ間でトラフィックを分散させます。AWS WAFを使用して、Route 53のルーティング設定にWeb ACLを関連付けます。
- D. EC2インスタンスを複数の可用性ゾーンにまたがるAuto Scalingグループにデプロイします。Network Load Balancer(NLB)を使用してEC2インスタンス間でトラフィックを分散させます。AWS WAFを使用して、NLBにWeb ACLを関連付けます。
正解: B. EC2インスタンスを複数の可用性ゾーンにまたがるAuto Scalingグループにデプロイします。Application Load Balancer(ALB)を使用してEC2インスタンス間でトラフィックを分散させます。AWS WAFを使用して、ALBにWeb ACLを関連付けます。
解説
正解:B EC2インスタンスを複数の可用性ゾーンにまたがるAuto Scalingグループにデプロイし、Application Load Balancer(ALB)でトラフィックを分散させ、AWS WAFを用いてALBにWeb ACLを関連付けます。 このソリューションがすべての要件を満たす理由: 企業は、スケーラブルで高可用性・セキュアなアーキテクチャを、レガシーなデータ処理アプリケーションに適用する必要があります。以下に、選択肢Bが各要件をどのように満たすかを説明します。 1.着信トラフィックの急増への対応(スケーラビリティ) 複数の可用性ゾーンにわたるAuto Scalingグループ(ASG)は、トラフィック需要に応じて自動的にEC2インスタンス数を調整します。トラフィックが増加すれば新しいインスタンスを起動し、減少すれば不要なインスタンスを終了させ、コストとパフォーマンスを最適化します。 2.可用性ゾーン障害時における継続動作(高可用性) 複数AZへの展開により、1つの可用性ゾーン(AZ)が利用不能になっても、トラフィックは他のAZ内の健全なインスタンスへ自動的に再ルーティングされます。Application Load Balancer(ALB)は、すべての健全なインスタンスに対してトラフィックを分散させるため、ダウンタイムを防ぎます。 3.Web Application Firewall(WAF)による保護 AWS WAFはALB(NLBやRoute 53ではない)と統合されており、悪意のあるトラフィック(例:SQLインジェクション、XSS攻撃など)をフィルタリング・ブロックできます。Web ACLは、一般的なWeb攻撃からアプリケーションを守るルールを定義します。 4.適切なロードバランサの選択(ALB vs NLB vs Route 53) ALBが最適な選択である理由: ・Layer 7(HTTP/HTTPS)で動作し、パスベースやホストベースなどの高度なルーティングを可能にします。 ・AWS WAFとの統合をサポート(NLBはLayer 4で動作し、WAFとの統合はできません)。 ・Route 53のレイテンシーベースルーティング(選択肢C)は、リージョン内でのフェイルオーバーには不必要であり、WAFを直接サポートしません。 その他の選択肢が不適切な理由: A.単一可用性ゾーンへのデプロイ:高可用性が確保されません。単一AZが障害を起こすとアプリケーション全体が停止します。WAFの統合は正しいものの、耐障害性を満たしません。 C.Route 53を用いたマルチリージョン構成:AZレベルのフェイルオーバーには過剰です。マルチリージョンはグローバルな耐障害性のために用いられ、ローカルなAZ障害対策には不適切です。また、AWS WAFはRoute 53にはアタッチできません(WAFはALB/CloudFront/API Gatewayのみ対応)。コストと複雑さが不必要に増大します。 D.NLBとWAFの組み合わせ:AWS WAFはNLBをサポートしていません(WAFはALB/CloudFront/API Gatewayのみ対応)。NLBはLayer 4(TCP/UDP)で動作するため、ALBのような高度なルーティング機能を持ちません。 最終的なアーキテクチャ概要: インターネット → AWS WAF(Web ACL) → Application Load Balancer(ALB、マルチAZ) → Auto Scaling Group(AZ-A)/Auto Scaling Group(AZ-B)→ EC2インスタンス(複数) キーポイント: ・マルチAZのAuto Scalingグループ → 高可用性とスケーラビリティを実現 ・ALB+AWS WAF → トラフィックの安全な分散と保護を実現 ・単一AZ、NLB、またはRoute 53を用いたWAF統合は、本ユースケースでは避けるべきです。 このソリューションにより、アプリケーションはスケーラブル性・高可用性・セキュリティのすべてを満たし、提示されたすべての要件を確実に満たします。