Amazon ECS デュアルスタックエンドポイントの使用 - Amazon Elastic Container Service

Amazon ECS デュアルスタックエンドポイントの使用

Amazon ECS デュアルスタックエンドポイントは、インターネットプロトコルバージョン 4 (IPv4) およびインターネットプロトコルバージョン 6 (IPv6) を介した Amazon ECS へのリクエストをサポートします。すべての Amazon ECS エンドポイントのリストについては、「AWS 全般のリファレンス」の「Amazon ECS のエンドポイントとクォータ」を参照してください。

REST API を使用する場合、エンドポイント名 (URI) を使用して直接 Amazon ECS エンドポイントにアクセスします。Amazon ECS はリージョン固有のデュアルスタックエンドポイント名のみをサポートしており、名前の一部としてリージョンを指定する必要があります。

デュアルスタックエンドポイント名には、次の命名規則を使用します: ecs.region.api.aws

AWS Command Line Interface (AWS CLI) や AWS SDK を使用している場合、パラメータまたはフラグを使ってデュアルスタックエンドポイントに変更できます。設定ファイル内の Amazon ECS エンドポイントをオーバーライドして、デュアルスタックエンドポイントを直接指定することもできます。

以下のセクションでは、AWS CLI、AWS SDK、および REST API からデュアルスタックエンドポイントを使用する方法について説明します。

AWS CLI からのデュアルスタックのエンドポイントの使用

このセクションでは、デュアルスタックのエンドポイントへリクエストするのに使用される AWS CLI コマンドの例を示します。AWS CLI のインストールまたは最新バージョンへのアップグレードについては、「バージョン 2 向けの AWS Command Line Interface ユーザーガイド」の「AWS CLI の最新バージョンのインストールまたは更新」を参照してください。

デュアルスタックエンドポイントを使用する際には、AWS CLI の config ファイルの設定値 use_dualstack_endpointtrue に設定することで、ecs AWS CLI コマンドによるすべての Amazon ECS リクエストを指定されたリージョンのデュアルスタックエンドポイントに転送することができます。--region オプションを使用して config ファイルまたはコマンドでリージョンを指定します。AWS CLI の構成ファイルの詳細については、「バージョン 2 向けの AWS Command Line Interface ユーザーガイド」の「AWS CLI の構成および認証ファイル設定」を参照してください。

特定の AWS CLI コマンドについてデュアルスタックエンドポイントを使用するには、次のいずれかの方法を使用できます。

  • 任意の ecs コマンドについて --endpoint-url パラメータを https://ecs.aws-region.api.aws もしくは http://ecs.aws-region.api.aws に設定することで、個別のコマンド単位でデュアルスタックエンドポイントを使用できます。

    次のコマンド例では、使用可能なすべてのクラスターを一覧表示し、リクエストにデュアルスタックエンドポイントを使用しています。

    $ aws ecs list-clusters --endpoint-url https://ecs.aws-region.api.aws
  • AWS Config ファイル内で別々のプロファイルを設定する。たとえば、use_dualstack_endpointtrue に設定するプロファイルと use_dualstack_endpoint を設定しないプロファイルを作成します。コマンドを実行する際には、デュアルスタックのエンドポイントを使用するかどうかによって、適切なプロファイルを指定します。

AWS SDK からデュアルスタックのエンドポイントを使用する

このセクションでは、AWS SDK を使用してデュアルスタックのエンドポイントにアクセスする方法の例を示します。

AWS SDK for Java 2.x

次の例は、AWS SDK for Java 2.x を使用して us-east-1 リージョンのデュアルスタックエンドポイントを指定する方法を示しています。

Region region = Region.US_EAST_1 EcsClient client = EcsClient.builder().region(region).dualstackEnabled(true).build();
AWS SDK for Go

次の例は、AWS SDK for Go を使用して us-east-1 リージョンのデュアルスタックエンドポイントを指定する方法を示しています。

sess := session.Must(session.NewSession()) svc := ecs.New(sess, &aws.Config{ Region: aws.String(endpoints.UsEast1RegionID), Endpoint: aws.String("https://ecs.us-east-1.api.aws") })

詳細については、「AWS SDK とツールリファレンスガイド」の「デュアルスタックおよび FIPS エンドポイント」を参照してください。

REST API からのデュアルスタックのエンドポイントの使用

REST API を使用する場合、リクエスト内でデュアルスタックエンドポイントを指定することで、特定のデュアルスタックエンドポイントに直接アクセスできます。次の例では、デュアルスタックエンドポイントを使用して、us-east-1 リージョン内のすべての Amazon ECS クラスターを一覧表示しています。

POST / HTTP/1.1 Host: ecs.us-east-1.api.aws Accept-Encoding: identity Content-Length: 2 X-Amz-Target: AmazonEC2ContainerServiceV20141113.ListClusters X-Amz-Date: 20150429T170621Z Content-Type: application/x-amz-json-1.1 Authorization: AUTHPARAMS {}