AWS Lambda连接超时到Elasticache

时间:2017-01-09 08:57:41

标签: amazon-web-services aws-lambda amazon-elasticache serverless-framework

我正在努力使无服务器与Elasticache一起工作。我根据无服务器示例/无服务器基础设施 repo编写了一个自定义CloudFormation文件。我设法将Elasticache和Lambda放在一个子网中(使用cli检查)。我从输出中检索主机和端口,但每当我尝试连接node-redis时,连接超时。以下是相关部分:

2 个答案:

答案 0 :(得分:3)

正如Tolbahady所指出的,唯一的解决方案是在VPC内创建NAT。

答案 1 :(得分:0)

我也遇到了这个问题,但是使用Python。对我来说,有一些必须解决的问题

  • lambda需要VPC permissions
  • ElastiCache安全组需要Lambda安全组的入站规则,该规则允许Redis端口上的通信。我以为他们可以在同一个安全组中。
  • 真正的踢腿者:我已经启用了传输中的加密功能。这意味着我需要通过redis.RedisClient(... ssl=True)redis-py页中提到需要将ssl_cert_reqs设置为None才能与ElastiCache一起使用,但是在我看来,这并不正确。但是,我确实需要通过ssl=True

有必要设置ssl=True,但连接只是超时,所以我不停地尝试找出权限/ VPC / SG设置的问题所在。