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"
],
..............................
}