连接AWS lambda和RDS数据库时超时

问题描述 投票:0回答:1

我有一个简单的.Net核心2.1 Web应用程序,我已部署到AWS lambda。该应用程序与RDS PostGres数据库进行通信。 Web应用程序能够从我的本地盒连接到RDS PostGres数据库,但同一应用程序超时连接到生产中的RDS数据库。

我错过了什么?

ASP.Net 2.1 Lambda配置:lambda具有执行角色,该角色具有对所有RDS资源具有所有权限的策略。 enter image description here enter image description here

现在,enter image description here

RDS =>连接和安全选项卡:enter image description here enter image description here

CloudWatch日志:在cloudwatch日志中单击lambda函数=>监控选项卡=>查看日志会显示以下错误:enter image description here

amazon-web-services aws-lambda amazon-rds
1个回答
2
投票

因此,您的RDS安全组看起来只允许来自1个特定IP(76.187.198.247)的入站连接。

这仅适用于lambda在子网中(不是)与弹性IP关联的情况,并且弹性IP是RDS安全组的入站地址。

Lambda不依赖于特定的硬件,IP每次都会更改,因此您将阻止与SG的入站连接。

但是,在这种情况下,这种弹性IP是不必要的成本,有更好的方法:

1)创建一个lambda将初始化的子网,2)然后在lambda设置中选择你想要启动到VPC(与RDS实例相同)和3)选择那些子网(最佳实践是> 2如果存在AZ中断)4)更改RDS安全组设置以允许来自子网lambdas的入站流量启动

© www.soinside.com 2019 - 2024. All rights reserved.