AWS Lambda访问VPC外部的RDS

ftk*_*tkg 8 amazon-web-services amazon-rds amazon-vpc aws-lambda

RDS实例不在VPC(Classic)上; 它与允许某些CIDR/IP和EC2安全组的安全组相关联.

我想创建一个AWS Lambda函数,该函数将在此数据库上执行一些SQL语句,并且还向同一安全组中的EC2实例发出请求.是否可以允许Lambda访问此数据库?

Dig*_*aen 11

您有两种选择:

1)VPC外部的Lambda函数:将RDS设置为"公共可访问",并且在安全组中允许从任何地方进行访问(因为未知的Lambda IP集).

2)VPC内部的Lambda函数:允许从VPC中的所有IP访问RDS,因为Lambda函数将从您的VPC中的可用IP获取IP.注意:如果Lambda函数并行运行多次,则您的VPC可能会耗尽IP,从而导致Lambda函数失败.

  • 注意,只需设置拉姆达到VPC内部操作将从访问VPC外部资源(包括其他AWS资源,如S3)禁止拉姆达.为了允许访问这两者,按照这些说明,他们是救命稻草.https://gist.github.com/reggi/dc5f2620b7b4f515e68e46255ac042a7 (6认同)
  • 我不会选择选项2。尤其是当我看到NAT网关的价格,并且每个可用区需要一个NAT时。这是一个骗局,您希望获得简单的服务,为什么我要为与其他AWS资源通信而为每个GB付费。kinesis S3,这将提供很多数据。 (2认同)