VPC 内から AWS サービスに接続する - Amazon Elastic Container Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

VPC 内から AWS サービスに接続する

Amazon ECS が正しく機能するには、各ホストで実行される ECS コンテナエージェントが Amazon ECS コントロールプレーンと通信する必要があります。コンテナイメージを Amazon ECR に保存する場合、Amazon EC2 ホストは Amazon ECR サービスエンドポイントと、イメージレイヤーが保存されている Amazon S3 と通信する必要があります。DynamoDB に保存されているデータの永続化など、コンテナ化されたアプリケーションに他の AWS サービスを使用する場合は、これらのサービスに必要なネットワークサポートも提供していることを再確認してください。

NAT ゲートウェイ

NAT ゲートウェイを使用することは、Amazon ECS タスクが他の AWS サービスにアクセスできることを保証する最も簡単な方法です。このアプローチの詳細については、「」を参照してくださいプライベートサブネットと NAT ゲートウェイの使用

NAT ゲートウェイを使用したネットワークのアーキテクチャを示す図。

このアプローチを使用する際の欠点は次のとおりです。

  • NAT ゲートウェイが通信できる送信先を制限することはできません。また、VPC からのすべてのアウトバウンド通信を中断することなく、バックエンド層が通信できる送信先を制限することはできません。

  • NAT ゲートウェイは、 が通過するデータ GB ごとに課金します。NAT ゲートウェイを使用して Amazon S3 から大きなファイルをダウンロードしたり、DynamoDB に大量のデータベースクエリを実行したりすると、帯域幅 GB ごとに課金されます。さらに、NAT ゲートウェイは 5 Gbps の帯域幅をサポートし、最大 45 Gbps まで自動的にスケールアップします。1 つの NAT ゲートウェイを介してルーティングする場合、非常に高い帯域幅の接続を必要とするアプリケーションでは、ネットワーク上の制約が発生する可能性があります。回避策として、ワークロードを複数のサブネットに分割し、各サブネットに独自の NAT ゲートウェイを与えることができます。

AWS PrivateLink は、トラフィックをパブリックインターネットに公開することなく、VPCs 、 AWS サービス、オンプレミスネットワーク間のプライベート接続を提供します。

これを実現するために使用されるテクノロジーの 1 つは VPC エンドポイントです。VPC エンドポイントは、VPC とサポートされている AWS のサービス、および VPC エンドポイントサービス間のプライベート接続を有効にします。VPC と他のサービス間のトラフィックは、Amazon ネットワークを離れることはありません。VPC エンドポイントには、インターネットゲートウェイ、仮想プライベートゲートウェイ、NAT デバイス、VPN 接続、または AWS Direct Connect 接続は必要ありません。VPC 内の Amazon EC2 インスタンスは、サービスのリソースと通信するためにパブリック IP アドレスを必要としません。

次の図は、インターネットゲートウェイの代わりに VPC エンドポイントを使用している場合に、 AWS サービスへの通信がどのように機能するかを示しています。 は、サブネット内で Elastic Network Interface (ENIsを AWS PrivateLink プロビジョニングし、VPC ルーティングルールを使用して、ENI を介してサービスホスト名に通信を送信し、送信先 AWS サービスに直接送信します。このトラフィックは、NAT ゲートウェイまたはインターネットゲートウェイを使用する必要がなくなります。

を使用したネットワークのアーキテクチャを示す図 AWS PrivateLink

以下は、Amazon ECS サービスで使用される一般的な VPC エンドポイントの一部です。

他の多くの AWS サービスは VPC エンドポイントをサポートしています。いずれかの AWS サービスを大量に使用する場合は、そのサービスの特定のドキュメントと、そのトラフィックの VPC エンドポイントを作成する方法を調べる必要があります。