Q28 — AWS SAA-C03 第4章
第 28/105 問 | ← 第4章
Q223. ある会社が、JavaおよびPHPベースのWebアプリケーションをオンプレミス環境からAWSへ移行しようとしています。この会社は、新しいサイト機能を頻繁にテストできる必要があり、また、高い可用性とマネージドサービスを備え、運用オーバーヘッドを最小限に抑えるソリューションを求めています。これらの要件を満たすソリューションはどれですか?
- A. Amazon S3バケットを作成し、S3バケット上で静的ウェブホスティングを有効化します。静的コンテンツをS3バケットにアップロードし、動的コンテンツの処理にはAWS Lambdaを使用します。
- B. WebアプリケーションをAWS Elastic Beanstalk環境にデプロイします。機能テストのために複数のElastic Beanstalk環境間でURLスワップを使用して切り替えます。 ✓
- C. JavaおよびPHPが設定されたAmazon EC2インスタンスにWebアプリケーションをデプロイします。Auto ScalingグループとApplication Load Balancerを活用して、Webサイトの可用性を管理します。
- D. Webアプリケーションをコンテナ化し、Amazon EC2インスタンスにデプロイします。AWS Load Balancer Controllerを活用して、テスト用の新規サイト機能を含むコンテナ間でトラフィックを動的にルーティングします。
正解: B. WebアプリケーションをAWS Elastic Beanstalk環境にデプロイします。機能テストのために複数のElastic Beanstalk環境間でURLスワップを使用して切り替えます。
解説
正解はBです。AWS Elastic Beanstalkは、JavaおよびPHPを含む複数のプラットフォームをサポートするフルマネージドなPaaS(Platform as a Service)であり、アプリケーションのデプロイ、スケーリング、モニタリング、ロードバランシングなどを自動化します。これにより、運用オーバーヘッドが最小限に抑えられ、高可用性も実現できます。さらに、Elastic Beanstalkでは「Blue/Greenデプロイメント」や「URLスワップ」を活用することで、本番環境への影響を最小限に抑えながら、新機能のテストや段階的なリリースが容易に行えます。一方、選択肢AはJava/PHPのようなサーバーサイド動的処理を完全にカバーできず、Lambda単体ではセッション管理や複雑なフレームワーク対応に制限があります。選択肢Cはマネージドではなく、OSパッチ適用、ミドルウェア管理、構成管理など、運用負荷が大きくなります。選択肢DはEC2上でのコンテナ実行であり、Kubernetesクラスタ(EKS)やコンテナオーケストレーションの管理が必要になるため、最小限の運用オーバーヘッドという要件に反します。したがって、要件を最も包括的に満たすのはBです。