启用VPCE的Lambda读取SSM参数时出现连接超时问题咨询
Lambda通过VPCE访问SSM超时的原因
以下是导致该问题的核心原因分析:
Lambda子网路由配置缺失
Lambda部署的子网对应的路由表中,未添加指向SSM接口型VPCE的路由条目。EC2能正常访问是因为其所在子网的路由表已配置该路由,但Lambda的子网未同步配置,导致流量无法导向VPCE,最终触发公网连接超时。安全组规则不匹配
- Lambda的安全组出站规则未允许HTTPS(443端口)流量到SSM服务或VPCE端点;
- SSM VPCE的安全组入站规则未放行来自Lambda安全组的443端口请求。
两者任一规则缺失都会阻断连接,而EC2的安全组可能已配置了正确的规则。
SSM VPCE配置错误
- 误创建了网关型VPCE:SSM服务仅支持接口型终端节点,网关型VPCE无法用于SSM访问;
- VPCE未关联Lambda所在子网:需要确保VPCE在Lambda部署的所有子网中都已启用;
- VPCE私有DNS未启用或VPC DNS配置异常:如果依赖VPCE私有域名访问,需确认VPC已开启启用DNS主机名和启用DNS解析,否则私有域名无法被解析。
Boto3客户端未指定VPCE端点
代码中创建SSM客户端时未指定VPCE的私有端点URL,boto3默认会调用公网SSM端点。而Lambda在VPC内若无NAT网关则无公网访问能力,因此出现连接超时。需修改代码指定VPCE端点:ssm_client = boto3.client('ssm', config=config, endpoint_url='https://ssm.us-east-1.vpce.amazonaws.com/[你的VPCE ID]')
内容的提问来源于stack exchange,提问作者AXn
相关产品推荐
相关产品推荐

