Q13 — AWS SAP-C02 第2章
第 13/75 問 | ← 第2章
Q163. 配送会社が、サードパーティ製のルート計画アプリケーションをAWSに移行する必要があります。このサードパーティは、パブリックレジストリからサポート対象のDockerイメージを提供しています。このイメージは、ルートマップ生成に必要な数だけコンテナとして実行できます。 同社は、配達エリアを複数のセクションに分割し、各セクションに供給ハブを設置することで、ドライバーがハブから顧客まで最も短い距離を移動できるようにしています。ルートマップ生成時間を短縮するため、各セクションでは、そのセクション内の注文のみを処理するようカスタマイズされた設定を持つ独自のDockerコンテナセットを使用します。 また、実行中のコンテナ数に応じて、コスト効率よくリソースを割り当てる機能が必要です。 これらの要件を満たすとともに、運用オーバーヘッドを最小限に抑えるソリューションはどれですか?
- A. Amazon EC2上でAmazon Elastic Kubernetes Service(Amazon EKS)クラスターを作成します。Amazon EKS CLIを使用して、--tagsオプションでカスタムタグをポッドに付与する形でルート計画アプリケーションをポッドとして起動します。
- B. AWS Fargate上でAmazon Elastic Kubernetes Service(Amazon EKS)クラスターを作成します。Amazon EKS CLIを使用してルート計画アプリケーションを起動し、AWS CLIのtag-resource API呼び出しでカスタムタグをポッドに付与します。
- C. Amazon EC2上でAmazon Elastic Container Service(Amazon ECS)クラスターを作成します。AWS CLIのrun-tasksオプションをtrueに設定してルート計画アプリケーションを起動し、--tagsオプションでカスタムタグをタスクに付与します。
- D. AWS Fargate上でAmazon Elastic Container Service(Amazon ECS)クラスターを作成します。AWS CLIのrun-taskコマンドを使用し、enableECSManagedTagsをtrueに設定してルート計画アプリケーションを起動します。さらに、--tagsオプションでカスタムタグをタスクに付与します。 ✓
正解: D. AWS Fargate上でAmazon Elastic Container Service(Amazon ECS)クラスターを作成します。AWS CLIのrun-taskコマンドを使用し、enableECSManagedTagsをtrueに設定してルート計画アプリケーションを起動します。さらに、--tagsオプションでカスタムタグをタスクに付与します。
解説
このシナリオでは、コンテナ数に応じた柔軟かつコスト効率の良いスケーリングと、最小限の運用オーバーヘッドが求められています。EC2ベースのクラスター(AおよびC)では、インスタンスのプロビジョニング・管理・パッチ適用・スケーリングなどのサーバー管理作業が発生し、運用負荷が高くなります。一方、Fargateはサーバーレスなコンテナ実行環境であり、インフラ管理をAWSが肩代わりするため、運用オーバーヘッドが極めて低減されます。 Kubernetes(EKS)は高度な機能を提供しますが、本ユースケースでは単純なコンテナ実行とタグ付けによるセクション別制御が主目的であり、Kubernetesの複雑さは過剰です。これに対し、Amazon ECSはシンプルで軽量なマネージドコンテナサービスであり、Fargateとの組み合わせで、最小限の設定と運用で要件を満たせます。 選択肢Dでは、Fargate上でのECS実行に加え、enableECSManagedTags = trueによりECSが自動的にタスクに関連付けられたリソース(ENIなど)にタグを付与し、--tagsで追加のカスタムタグも指定可能であるため、セクションごとの識別・監視・コスト分析が容易になります。したがって、Dが最も適した選択肢です。