Q20 — AWS SAA-C03 第16章

第 20/100 問 | ← 第16章

Q1220. ソリューションアーキテクトは、Dockerコンテナイメージとしてパッケージ化されたアプリケーションを実行するサーバーレスアーキテクチャを設計する必要があります。このコンテナは一時ファイル用に50 GBの利用可能なストレージを必要とします。これらの要件を満たすソリューションはどれですか?

正解: C. AWS Fargate 起動タイプを使用する Amazon Elastic Container Service(Amazon ECS)クラスターを作成します。Amazon Elastic File System(Amazon EFS)ボリュームを含むコンテナイメージのタスク定義を作成し、そのタスク定義を使って ECS サービスを作成します。

解説

正解:C。 要件を満たすには、Docker コンテナイメージとしてパッケージ化されたアプリケーションをサーバーレスアーキテクチャで実行し、一時ファイル用に 50 GB のストレージを確保できるソリューションが必要です。最も適切な選択肢は以下の通りです。 C. AWS Fargate 起動タイプを使用する Amazon ECS クラスターを作成し、Amazon EFS ボリュームを含むタスク定義を定義したうえで、ECS サービスを作成する。 分析: ・AWS Fargate と Amazon EFS の組み合わせ:  AWS Fargate は、Amazon ECS や Amazon EKS と連携して動作するサーバーレスなコンテナ実行エンジンであり、サーバーやクラスターの管理を不要にします。  Amazon EFS は、AWS クラウドサービスやオンプレミス環境と連携可能な、スケーラブルなファイルストレージを提供します。共有ファイルストレージや大容量の一時ストレージを必要とするアプリケーションに最適です。ECS のタスク定義に EFS ボリュームを指定することで、コンテナに必要な 50 GB の一時ストレージを確実に提供できます。  具体的には、Fargate 起動タイプの ECS クラスターを作成し、コンテナイメージと EFS ボリュームを含むタスク定義を定義した後、そのタスク定義に基づいて ECS サービスを起動します。 A. AWS App Runner:  App Runner は、コンテナイメージから Web アプリケーションや API を簡単にデプロイ・スケールできるフルマネージドサービスですが、一時ストレージのサイズを直接かつ柔軟に制御する機能は提供していません。特に 50 GB のような大容量の一時ストレージ要件には対応できません。 B. AWS Lambda と Docker コンテナイメージ:  Lambda はコンテナイメージの実行をサポートしていますが、あくまで短時間・イベント駆動型のワークロード向けであり、大量の一時ストレージや長時間実行を想定していません。50 GB のストレージ要件には技術的にも運用的にも不適切です。 D. Amazon EC2 起動タイプの Amazon ECS:  EC2 インスタンスに EBS ボリュームをアタッチすればストレージ要件は満たせますが、EC2 起動タイプではインスタンスのプロビジョニング・パッチ適用・スケーリングなどのサーバー管理作業が発生するため、「サーバーレス」という要件を満たしません。 以上より、AWS Fargate を活用した Amazon ECS と Amazon EFS の組み合わせが、サーバーレスかつ 50 GB の一時ストレージを必要とする Docker コンテナアプリケーションに最も適したソリューションです。