AWS Lambda函数无法连接?

时间:2018-03-30 15:03:30

标签: amazon-web-services tcp aws-lambda tcp-ip

我有一个Lambda函数,我每小时使用cloudwatch预定事件运行。

当触发时,该函数向互联网上的服务发出HTTP请求,然后,在收到响应后,在我们的VPC内部执行一些SQL查询,然后再向同一服务发出一些HTTP请求。

由于SQL数据库,Lambda必须在我们的VPC中运行。因此,为了连接到互联网,我将我们的NAT网关子网包含在Lambda的VPC子网中。

我尝试过几次破坏和创建这个Lambda函数,结果相同:

按预期运行几个小时/几个小时。然后,之后,它再也不会成功,因为尝试为第一个HTTP请求建立TCP连接可靠地失败。只有在我使用相同的代码和配置创建一个全新的Lambda函数后,它才能连接到互联网。

这怎么可能?

1 个答案:

答案 0 :(得分:0)

  

我已将我们的NAT网关子网包含在Lambda的VPC子网中。

这绝对是一种错误配置。

需要访问Internet的Lambda函数需要位于其默认路由指向 NAT网关的子网上 - 其中任何一个也不能是具有实际NAT网关的子网。 NAT网关从不向与网关本身相同的子网上的任何实例提供NAT服务。