コンテナ中級CLF-C02SAA-C03
ECS Fargate コンテナWebアプリ構成
ECS Fargateでコンテナ化したWebアプリを実行し、ALBでHTTPSアクセスを受ける基本構成です。
#ECS#Fargate#Container#ALB#ECR
構成図
使用AWSサービス
サービス名をクリックすると、用語詳細ページへ移動します。
概要
ECS Fargateは、コンテナ化したWebアプリケーションをサーバー管理なしで実行する構成です。EC2インスタンスの管理を避けながら、DockerイメージをAWS上で動かせます。 外部公開にはALBを使い、コンテナイメージはECRに保存します。
通信フロー
1. ユーザーがRoute 53で管理されたドメインへHTTPSアクセスします。 2. ALBがリクエストを受け付けます。 3. ALBがターゲットグループ経由でECS Fargateタスクへ転送します。 4. Fargateタスク上のコンテナがリクエストを処理します。 5. コンテナログをCloudWatch Logsへ出力します。 6. デプロイ時はECRからコンテナイメージを取得します。
設計ポイント
ALBはパブリックサブネットに配置し、ECSタスクはプライベートサブネットに配置します。ECSタスクのSecurity GroupはALBからの通信だけを許可します。 FargateはvCPU、メモリ、実行時間で課金されます。個人MVPではS3 + CloudFrontよりコストが高くなりやすいため、このプロジェクト本体では採用せず、学習用構成として扱います。
SAA試験ポイント
コンテナを動かしたいがEC2管理を避けたい場合はFargateが候補になります。外部公開にはALB、イメージ保存にはECR、ログ確認にはCloudWatch Logsを使います。 タスク実行ロールとタスクロールの違いも押さえます。
他のAWS構成図も確認する
SAA対策では、AWSサービスを単体ではなく構成パターンとして理解することが重要です。