0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

個人的備忘録:Fargate × awsvpc モードとは?ネットワーク設計のポイントを整理してみた

Last updated at Posted at 2025-04-08

はじめに

AWS Fargate は、インフラ管理不要でコンテナを実行できるサーバーレスなコンテナ実行環境です。

Fargate を活用する際、タスクのネットワーク構成を理解することは、セキュリティや可観測性の観点で重要です。

本記事では、Fargate 起動タイプの Amazon ECS タスクにおけるネットワークの仕組みを簡潔に紹介します。

Fargate 起動タイプの Amazon ECS タスクにおけるネットワークオプション

ENI(Elastic Network Interface)の割り当て

Fargate の ECS タスクには、プライマリプライベート IP を備えた ENI が自動で割り当てられます。

  • パブリックサブネット: ENI にパブリック IP 割り当て可
  • IPv6 対応サブネット: IPv6 アドレス割り当て可
  • 1 タスクに 1 ENI: 単一の ENI を持つ

コンテナ間通信

同一タスク内のコンテナ間では localhost を用いて通信が可能です。

インターネット接続

  • パブリックサブネット: パブリック IP を通じて直接接続
  • プライベートサブネット: NAT ゲートウェイ経由
  • ECR 利用時: PrivateLink によるプライベート通信が可能

VPC フローログ

ENI 単位での通信を監視可能。トラフィックの可視化に活用できます。

AWS PrivateLink

Amazon ECS API への通信をインターネットに依存せず、Amazon ネットワーク内で完結できます。

ENI 管理と IAM

ENI の作成は AWS が自動管理。対応する IAM ポリシー設定も必要です。

プラットフォームバージョン別挙動

アクション v1.3.0 以下 v1.4.0 Windows v1.0.0 IAM 権限
ECR 認証 Fargate ENI タスク ENI タスク ENI 実行ロール
イメージプル タスク ENI タスク ENI タスク ENI 実行ロール
ログ送信 タスク ENI タスク ENI タスク ENI 実行ロール
FireLens タスク ENI タスク ENI タスク ENI タスク IAM
Secrets 取得 Fargate ENI タスク ENI タスク ENI 実行ロール
EFS - タスク ENI タスク ENI タスク IAM
アプリ通信 タスク ENI タスク ENI タスク ENI タスク IAM

ネットワークモード

  • パラメータ: networkMode
  • : 文字列
  • 必須: はい

Fargate タスクは awsvpc モードが必須です。

このモードでは以下の特徴があります:

  • ENI を通じて EC2 と同様のネットワーク機能が利用可能
  • ポートは ENI に直接マッピング(動的ホストポートマッピング不可)
  • NetworkConfiguration の指定が必要

none モードの場合、外部通信不可・ポートマッピング不可となります。


まとめ

Fargate タスクでは、ネットワークモードに awsvpc を使用し、ENI による分離・可視化が基本設計です。

パブリック IP、NAT、PrivateLink などのネットワーク構成に応じて設計を最適化することが重要です。

タスク単位のセキュリティ制御や監査が可能になるため、要件に応じたネットワーク設計の参考になれば幸いです!

参考文献

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?