繁体   English   中英

AWS CDK:使用 VPC 接口端点创建 API 网关时出现异常

[英]AWS CDK : Exception while creating API Gateway with VPC Interface Endpoint

我正在尝试查找现有 VPC,检索所有私有子网(确保每个可用区中只有私有子网)。 创建 VPC 终端节点,然后在创建 API 网关期间将其与 API 网关关联。 但是在运行代码时出现以下异常。

vpce-00c8fd5068629a5ab 不是有效的 VPC 终端节点 ID(服务:AmazonApiGateway;状态代码:400;错误代码:BadRequestException;请求 ID:ab287404-3002-41e5-8d93-e5792577d262;代理:null)

另外,我可以单独创建 VPC 端点。 也能够创建普通的 API 网关,而无需与 VPC 端点相关联。

请让我知道可能是什么问题。

vpc_retrieved = aws_ec2.Vpc.from_lookup(self, id="testvpcid",vpc_name="somevalidvpcname")

subnet_list = []
for subnet in vpc.private_subnets:
  subnet_list.append(subnet)

vpc_endpoint = aws_ec2.InterfaceVpcEndpoint(self, 
                 id="vpcendpoint", 
                 vpc=vpc_retrieved, 
                 service=aws_ec2.InterfaceVpcEndpointService(
                           name="com.amazonaws.us-east-2.lambda",port=80),
                 subnets=aws_ec2.SubnetSelection(subnets=subnet_list)
               )

vpc_endpoints = []
vpc_endpoints.append(vpc_endpoint)

vpc_endpoint_types = []
vpc_endpoint_types.append(aws_cdk.aws_apigateway.EndpointType.PRIVATE)

api_gateway = aws_cdk.aws_apigateway.RestApi(self, 
                id="cdktestapi",
                rest_api_name="cdk-test-api",
                endpoint_configuration= 
                   aws_cdk.aws_apigateway.EndpointConfiguration(                                                                       
                     types=vpc_endpoint_types,
                     vpc_endpoints=vpc_endpoints)
               )

这个问题原来是一个基本问题。 我需要使用正确的 API Gateway 服务端点,即“com.amazonaws.us-east-2.execute-api”。 因此,以以下方式创建 VPC 端点解决了该问题:

vpc_endpoint = aws_ec2.InterfaceVpcEndpoint(self, 
             id="vpcendpoint", 
             vpc=vpc_retrieved, 
             service=aws_ec2.InterfaceVpcEndpointService(
                       name="com.amazonaws.us-east-2.execute-api",port=80),
             subnets=aws_ec2.SubnetSelection(subnets=subnet_list)
           )

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM