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

最終更新日: 2022 年 7 月 27 日

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

簡単な説明

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

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

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

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

解決方法

注: AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、最新の AWS CLI バージョンを使用していることを確認してください

プロバイダー VPC の Network Load Balancer で有効になっているアベイラビリティーゾーンを確認します。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-1b のサブネットが選択可能であることを示しています。

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

この出力は、コマンドを実行している AWS アカウントの値にマッピングされます。したがって、サービスプロバイダーアカウントとサービスコンシューマーアカウントの両方が、異なるアベイラビリティーゾーンにある場合でも、上記のコマンドを実行できます。コンシューマーアカウントには、アカウントがエンドポイントサービスで AWS プリンシパルとして許可されていることを確認してください。


この記事はお役に立ちましたか?


請求に関するサポートまたは技術サポートが必要ですか?