Amazon web services 可以在对等vpc中调用aws接口端点吗?

Amazon web services 可以在对等vpc中调用aws接口端点吗?,amazon-web-services,vpc-endpoint,aws-vpc-peering,Amazon Web Services,Vpc Endpoint,Aws Vpc Peering,我有两个vpc,一个是mgmt vpc,所有必要的vpc接口端点连接到AWS服务,另一个对等vpc与mgmt vpc建立对等连接。我尝试在对等vpc中使用ssh连接到我的实例(称之为实例A),并使用以下命令通过cli调用aws api aws ec2 describe-instances 但每次连接都会超时 我已检查我的vpc端点安全组,并再次确认我已将其设置为允许来自连接到实例A的安全组的所有传入流量。我的实例A的安全组已设置为允许所有流量流出到vpce安全组 以前有人知道或遇到过这个问题吗

我有两个vpc,一个是mgmt vpc,所有必要的vpc接口端点连接到AWS服务,另一个对等vpc与mgmt vpc建立对等连接。我尝试在对等vpc中使用ssh连接到我的实例(称之为实例A),并使用以下命令通过cli调用aws api

aws ec2 describe-instances
但每次连接都会超时

我已检查我的vpc端点安全组,并再次确认我已将其设置为允许来自连接到实例A的安全组的所有传入流量。我的实例A的安全组已设置为允许所有流量流出到vpce安全组

以前有人知道或遇到过这个问题吗?我遗漏了什么或者做错了什么

编辑:我的对等vpc有几个子网,只有IGW位于入口/出口层子网中。在web层子网中,有一些我试图在那里调用vpce的实例,这里的子网具有NAT网关

对于管理vpc,ssh进入的唯一方法是通过vpc内的jumphost实例

web层子网的路由表如下所示:

Destination            Target
100.113.189.0/24       pcx-0d3974s489064s3sd
100.113.206.0/24       local
10.196.162.128/25      local
 Outbound
 Port Range             Protocol      Source
 All                    All           sgrp-<vpce_to_ec2>
web层子网实例的安全组如下所示:

Destination            Target
100.113.189.0/24       pcx-0d3974s489064s3sd
100.113.206.0/24       local
10.196.162.128/25      local
 Outbound
 Port Range             Protocol      Source
 All                    All           sgrp-<vpce_to_ec2>
出站
端口范围协议源
所有sgrp-
管理vpc中具有vpce的子网的路由表:

Destination            Target
100.113.206.0/24       pcx-0d3974c6890640bd2
100.113.189.0/24      local
10.196.157.128/25     local
pl-6fa54006           vpce-<this_is_for_s3>
目标
100.113.206.0/24 pcx-0d3974c6890640bd2
100.113.189.0/24本地
10.196.157.128/25本地
pl-6fa54006 vpce-
对于vpce到ec2安全组:

Inbound
Port Range             Protocol      Source
All                    All           sgrp-<web_tier_instance>
All                    All           100.113.189.0/24
入站
端口范围协议源
所有sgrp-
全部100.113.189.0/24
请注意,每个vpc都分配了两个cidr块。根据评论,mgmt vpc中还有s3端点网关

我试图重现问题和OP的架构,并且可以验证如果使用
--端点url
,与端点的连接是否有效

aws ec2 describe-instances --endpoint-url vpce-05c21657a045fff54-puytslup.ec2.us-east-1.vpce.amazonaws.com
在上面,端点url(
vpce-05c21657a045fff54-puytslup.ec2.us-east-1.vpce.amazonaws.com
)可以从VPC接口详细信息中获得


可能启用对等连接也会起作用。在这种情况下,可能不需要端点url。但是,我还没有验证
在我的测试中,因为我只专注于解决
--端点url

的问题,您是否尝试过指定VPC端点DNS名称:
aws ec2 description instances--端点url vpce-05c21657a045fff54-puytslup.ec2.us-east-1.vpce.amazonaws.com
。显然,您的端点DNS名称将不同。您必须在vpc接口端点详细信息中进行检查。您可以使用vpc设置更新该问题吗。这些VPC是否完全私有,没有internet网关?你的路线表和其他东西是什么。我可以尝试重新构建您的VPC对等体系结构并重现该问题。我创建了两个VPC,使其拥有一个只有EC2端点的专用VPC和webteir VPC。
--endpointurl
的使用与预期一样有效。如果没有
--端点url
,aws cli将挂起。因此,您应该仔细检查您的路由表和安全组。您是否已在VPC中启用DNS主机名和DNS支持?您还可以验证您的VPCE是否有效,例如,通过在mgmt中创建实例并在那里尝试aws cli吗?@Marcin我今天再次尝试,并使用您的建议进行了测试,一切正常。现在,通过显式指定端点url,我可以在对等vpc中调用vpce端点。非常感谢。无论如何,我可以信任你除了投票支持你的评论?嗨,很抱歉反应太晚。顺便说一句,我已经测试了你在这里建议的DNS解析支持。两个VPC都启用了DNS解析和支持,但我仍然需要特别指定--endpoint url来调用aws endpoint。@谢谢您让我知道。所以我想这就是使用
——端点url
的唯一方法。