Q27 — AWS SAA-C03 第15章
第 27/100 問 | ← 第15章
Q1127. ある企業は、オンプレミスのデータセンターでモノリシックなアプリケーションを実行しています。このアプリケーションは Java/Tomcat で構築されており、データベースとして Microsoft SQL Server を使用しています。同社は、このアプリケーションを AWS へ移行したいと考えています。 この要件を満たす中で、最も運用オーバーヘッドが少ないソリューションはどれですか?
- A. AWS App2Container を使用してアプリケーションをコンテナ化し、Amazon Elastic Kubernetes Service(Amazon EKS)上にデプロイします。データベースは Amazon RDS for SQL Server にデプロイし、Multi-AZ 構成を設定します。 ✓
- B. アプリケーションをコンテナ化し、Amazon EC2 インスタンス上で自己管理型の Kubernetes クラスターにデプロイします。データベースは別の EC2 インスタンス上にデプロイし、Microsoft SQL Server Always On 可用性グループを構成します。
- C. Web アプリケーションのフロントエンドを Amazon S3 上の静的ウェブサイトとしてデプロイし、データベース層には Amazon DynamoDB を使用します。
- D. AWS App2Container を使用してアプリケーションをコンテナ化し、Amazon Elastic Kubernetes Service(Amazon EKS)上にデプロイします。データベース層には Amazon DynamoDB を使用します。
正解: A. AWS App2Container を使用してアプリケーションをコンテナ化し、Amazon Elastic Kubernetes Service(Amazon EKS)上にデプロイします。データベースは Amazon RDS for SQL Server にデプロイし、Multi-AZ 構成を設定します。
解説
このアプリケーションを AWS へ移行するにあたり、最も運用オーバーヘッドが少ないソリューションは、選択肢 A です。 理由: ・AWS App2Container:既存のアプリケーションを自動的にコンテナ化するサービスであり、移行に伴う手動作業や運用負荷を大幅に削減します。 ・Amazon EKS:マネージド型の Kubernetes サービスであるため、Kubernetes 自体のインフラ管理(パッチ適用、スケーリング、監視など)を AWS が代行し、運用負荷を最小限に抑えます。 ・Amazon RDS for SQL Server:バックアップ、パッチ適用、スケーリング、高可用性(Multi-AZ)などのデータベース管理作業を AWS が全面的に担当するため、EC2 上で自己管理する場合と比べて運用オーバーヘッドが極めて小さくなります。 他の選択肢が不適切な理由: B:自己管理型の Kubernetes クラスターや SQL Server Always On の構成・運用は、専門知識と継続的な管理作業を必要とし、運用オーバーヘッドが非常に高くなります。 C:モノリシックな Java/Tomcat アプリケーションを、静的ホスティング(S3)+NoSQL(DynamoDB)という根本的に異なるアーキテクチャに再設計する必要があり、大規模なリファクタリングと互換性の問題を招きます。 D:アプリケーションが SQL Server(リレーショナルDB)を前提に設計されているにもかかわらず、DynamoDB(NoSQL)への移行を強いるため、スキーマ設計・クエリロジック・トランザクション処理など、データベース層全体の再実装が必要となり、運用・開発負荷が急増します。 したがって、選択肢 A は、アプリケーションの再設計を最小限に抑えつつ、最大限にマネージドサービスを活用することで、運用オーバーヘッドを最も小さくする最適なバランスを実現します。