Q96 — AWS DOP-C02 第2章
第 96/100 問 | ← 第2章
ある企業が多数のアプリケーションを運用しています。企業内の異なるチームがさまざまな言語およびフレームワークを使用してアプリケーションを開発しています。これらのアプリケーションは、オンプレミスおよび異なるオペレーティングシステムを実行するさまざまなサーバー上で動作しています。各チームには独自のリリースプロトコルおよびプロセスがあります。企業は、これらのアプリケーションのリリースおよび保守の複雑さを軽減したいと考えています。企業は、これらのアプリケーションを含む技術スタック全体をAWSへ移行中です。企業は、ソースコードの集中管理、一貫性・自動化されたデリバリーパイプライン、および可能な限り少ない下位インフラストラクチャ保守作業を望んでいます。
- A. すべてのアプリケーションに対して1つのAWS CodeCommitリポジトリを作成します。各アプリケーションのコードを異なるブランチに配置します。ブランチをマージし、AWS CodeBuildを使用してアプリケーションをビルドします。AWS CodeDeployを使用して、集中型アプリケーションサーバーにアプリケーションをデプロイします。
- B. 各アプリケーションに対して個別のAWS CodeCommitリポジトリを作成します。AWS CodeBuildを使用して1つのアプリケーションを一度にビルドします。AWS CodeDeployを使用して、集中型アプリケーションサーバーにアプリケーションをデプロイします。
- C. 各アプリケーションに対して個別のAWS CodeCommitリポジトリを作成します。AWS CodeBuildを使用して1つのアプリケーションを一度にビルドし、各サーバー用にAMIを作成します。AWS CloudFormation StackSetsを使用して、これらのAMIを活用し、Amazon EC2キューの自動構成および削除を実行します。
- D. 各アプリケーションに対して個別のAWS CodeCommitリポジトリを作成します。AWS CodeBuildを使用して、各アプリケーション向けにAmazon Elastic Container Registry(Amazon ECR)内にDockerイメージをビルドします。AWS CodeDeployを使用して、AWS Fargateによって管理されるインフラストラクチャ上のAmazon Elastic Container Service(Amazon ECS)にアプリケーションをデプロイします。 ✓
正解: D. 各アプリケーションに対して個別のAWS CodeCommitリポジトリを作成します。AWS CodeBuildを使用して、各アプリケーション向けにAmazon Elastic Container Registry(Amazon ECR)内にDockerイメージをビルドします。AWS CodeDeployを使用して、AWS Fargateによって管理されるインフラストラクチャ上のAmazon Elastic Container Service(Amazon ECS)にアプリケーションをデプロイします。
解説
選択肢Dを選択する理由は以下の通りです: ソースコードの集中管理:各アプリケーションに対して独立したCodeCommitリポジトリを設けることで、管理が容易になります。 自動化されたデリバリーパイプライン:CodeBuildおよびCodeDeployを活用して継続的インテグレーション/継続的デリバリー(CI/CD)を実現します。 インフラストラクチャ保守の簡素化:AWS Fargateを活用することで、下位インフラストラクチャの管理が最小限となり、柔軟性およびスケーラビリティが向上します。 このソリューションにより、リリースおよび保守の複雑さを効果的に軽減でき、企業のAWS移行目標に合致します。