Amazon VPC インターフェイスエンドポイントのための、アベイラビリティーゾーンが選択できないのはなぜですか?

最終更新日: 2019 年 5 月 9 日

Amazon Virtual Private Cloud (Amazon VPC) を使用して、インターフェイス VPC エンドポイントを作成しています。しかし、アベイラビリティーゾーンに希望のサブネットが選択できません。インターフェイス VPC エンドポイントに、アベイラビリティーゾーンを選択できないのはなぜですか?

簡単な説明

インターフェイス VPC エンドポイント を作成し AWS PrivateLink サービスに接続するためには、

  • Elastic ネットワークインターフェースが起動されたのと同じアベイラビリティーゾーン内にある、サブネットを選択する必要があり ます。
  • アベイラビリティーゾーンマッピングは、AWS アカウント間で異なる設定にすることも可能です。たとえば、あるアカウントで us-east-1 a にマッピングされたサブネットを、別のアカウントでは us-east-1 c としてマッピングすることができます。

アカウント内にインターフェイスエンドポイントを作成する場合、

  • 選択できるのは、プロバイダ VPC のネットワークロードバランサーで有効になっているアベイラビリティーゾーンと、一致するアベイラビリティーゾーンだけです。
  • Amazon VPC コンソールは、アベイラビリティーゾーンのマッピングを自動的に実行します。
  • プロバイダ VPC のネットワークロードバランサーで、アベイラビリティーゾーンが有効になっていない場合、Service not supported in this Availability Zone のエラーが表示されます。

解決方法

プロバイダ VPC のネットワークロードバランサーで有効になっているアベイラビリティーゾーンを確認します。describe-vpc-endpoint-services コマンドを使います。

aws ec2 describe-vpc-endpoint-services --service-names SERVICE-NAME

このコマンドを使用して、有効になっているアベイラビリティーゾーンを表示した例を示します。

aws ec2 describe-vpc-endpoint-services --service-names com.amazonaws.vpce.us-east-1.vpce-svc-xxxxxxxxxx

この例では、us-east-1 b のサブネットが選択可能であることが分かります。

{
    "ServiceDetails": [
         .............................
            "ServiceName": " com.amazonaws.vpce.us-east-1.vpce-svc-xxxxxxxxxx ",
            "VpcEndpointPolicySupported": false,
            "Owner": "##########",
            "AvailabilityZones": [
                "us-east-1b"
            ],
        ..............................
}