Amazon web services 使用VPC对等对Lambda到RDS连接进行故障排除
我的AWS Lambda函数在连接到另一个VPC中的RDS实例时超时。专有网络被监视 我检查过的东西:Amazon web services 使用VPC对等对Lambda到RDS连接进行故障排除,amazon-web-services,aws-lambda,amazon-vpc,aws-vpc-peering,Amazon Web Services,Aws Lambda,Amazon Vpc,Aws Vpc Peering,我的AWS Lambda函数在连接到另一个VPC中的RDS实例时超时。专有网络被监视 我检查过的东西: Lambda位于正确的VPC内 RDS在另一个VPC内 RDS存在于对等的子网中 VPC对等已“接受” Lambda安全组对RDS安全组的正确端口(5432)具有进入权限 Lambda安全组对任何端口上的任何位置都有出口权限 从Lambda VPC子网到对等网络存在路由表条目 存在从RDS VPC子网到对等网络的路由表条目 我还可以检查/利用什么来解决此连接问题 更新 两个VPC都启用
- Lambda位于正确的VPC内
- RDS在另一个VPC内
- RDS存在于对等的子网中
- VPC对等已“接受”
- Lambda安全组对RDS安全组的正确端口(
)具有进入权限5432
- Lambda安全组对任何端口上的任何位置都有出口权限
- 从Lambda VPC子网到对等网络存在路由表条目
- 存在从RDS VPC子网到对等网络的路由表条目
更新
- 两个VPC都启用了DNS主机名和DNS解析
更新 我尝试了以下方法:
- 在与Lambda相同的子网上创建EC2实例
- 将lambda SG分配给EC2
- SSH连接到EC2
到RDS:telnet
select1asx
或类似方式来测试这一点。解决方案是优化查询,使其能够在合理的时间内运行
启动与Lambda设置相似的EC2并通过SSH连接的技巧是很好的。两个VPC都在同一个区域或不同的区域?两个VPC都在同一个区域我不知道“引用两个安全组”是什么意思,但有一个SG规则允许从Lambda SG进入RDS sgOk。要准确识别问题,请提供有关配置的更多信息。如果可能,共享sg组和路线表的屏幕截图。您还可以尝试在同一子网(Lambda的同一子网)中启动一个EC2实例。将Lambda安全组用于EC2。从EC2、telnet到端口5432上的RDS。如果telnet正在工作,那么您可以确保VPC对等正在工作,然后问题可能出在Lambda身上。@JyothishKumarS感谢您的建议。可以确认问题是否与lambda有关
telnet rds.xxxxxxxxxx.eu-west-2.rds.amazonaws.com 5432
Trying 10.11.65.225...
Connected to rds.xxxxxxxxxx.eu-west-2.rds.amazonaws.com.
Escape character is '^]'.
^CConnection closed by foreign host.