プライベートサブネットの Fargate で Amazon ECS タスクを実行する方法を教えてください。

所要時間1分
0

プライベートサブネットの AWS Fargate で Amazon Elastic Container Service (Amazon ECS) タスクを実行したいと考えています。

簡単な説明

Fargate タスクは、プライベートサブネットで実行できます。ただし、ユースケースによっては、特定の操作のためにインターネットアクセスが必要になる場合があります。例えば、パブリックリポジトリからイメージをプルしたい場合があります。あるいは、タスクのためにインターネットアクセスを防止したい場合もあります。

インターネットにアクセスできないプライベートサブネットで Fargate タスクを実行するには、仮想プライベートクラウド (VPC) エンドポイントを使用します。VPC エンドポイントを使用すると、タスクにインターネットへのアクセスを付与することなく Fargate タスクを実行できます。必要なエンドポイントには、プライベート IP アドレス経由でアクセスします。

タスクでプライベートサブネットからインターネットにアクセスする必要がある場合は、NAT ゲートウェイを使用してインターネットアクセスを付与します。必要なエンドポイントには、NAT ゲートウェイのパブリック IP アドレス経由でアクセスします。

解決策

VPC を作成する

パブリックサブネットまたはプライベートサブネットを使用して Amazon Virtual Private Cloud (Amazon VPC) を作成します。次に、ユースケースに応じて、「インターネットにアクセスできないプライベートサブネットを使用する (VPC エンドポイント方式)」の手順を実行します。あるいは、「インターネットにアクセスできるプライベートサブネットを使用する」の手順を実行します。

インターネットにアクセスできないプライベートサブネットを使用する (VPC エンドポイント方式)

インターフェイスエンドポイントと Amazon Simple Storage Solution (Amazon S3) ゲートウェイエンドポイントを作成するには、次の手順を実行します。

  1. Amazon S3 ゲートウェイエンドポイントを作成します
  2. Amazon Elastic Container Registry (Amazon ECR) インターフェイスエンドポイントを作成します
  3. AWS Secrets Manager を使用してタスクと Amazon CloudWatch Logs にシークレットを挿入するタスクの場合は、両方のサービスのインターフェイスエンドポイントを作成します。
    注: これらの VPC エンドポイントのセキュリティグループは、Fargate タスクセキュリティグループまたは Fargate タスク VPC CIDR 範囲からの TCP ポート 443 でのインバウンドトラフィックを許可します。
  4. この記事の「Amazon ECS クラスターとサービスを作成する」セクションの手順を実行します。

インターネットにアクセスできるプライベートサブネットを使用する

NAT ゲートウェイを作成します。NAT ゲートウェイを作成する場合は、次のタスクを実行します。

  • NAT ゲートウェイをパブリックサブネット内に配置します。
  • プライベートサブネットのルートテーブルを更新します。
    [送信先]0.0.0.0/0 と入力します。
    [ターゲット] で、NAT ゲートウェイの ID を選択します。

次に、この記事の「Amazon ECS クラスターとサービスを作成する」セクションの手順を実行します。

Amazon ECS クラスターとサービスを作成する

  1. Amazon ECS クラスターを作成します[インフラストラクチャ] で、[AWS Fargate (サーバーレス)] を選択します。
  2. Amazon ECS サービスを作成します

Fargate サービス用のネットワークを設定する場合は、次のタスクを実行します。

  • 前に選択した方式に基づいて、VPC エンドポイント用に設定したプライベートサブネットを選択します。あるいは、NAT ゲートウェイ用に設定したサブネットを選択します。
  • セキュリティグループに対して、Amazon ECS エンドポイントにアクセスするためのポート 443 でのアウトバウンドトラフィックを許可します。
AWS公式
AWS公式更新しました 9ヶ月前
コメントはありません

関連するコンテンツ