首页 > 解决方案 > 多个 ENI Lambda 的源选择

问题描述

AWS Lambda 可以通过网络连接到 VPC 的多个子网。对于每个附加的子网(和安全组),Lambda 将具有(至少)一个ENI

当具有多个子网/ENI 连接的 Lambda 向同一 VPC 中的目标发起流量时,哪些规则决定为发起的流量选择哪个子网/ENI

AWS 可能会从附加的子网/ENI 中随机选择一个子网。如果是这样,它会正常工作,因为 VPC 的“本地”默认路由不关心原始子网。但它是随机的吗?

最近,AWS 对 Lambda 子网/ENI 附件进行了大修,以提高效率……以便创建和重复使用最少的 ENI,而不是每次执行 Lambda 时都创建一个新的 ENI。但这并不能改变问题。从根本上说,任何附加到多个子网的 Lambda 都需要为 lambda 生成的 VPC 内部流量选择一个附加子网(一个 ENI 输入)。

选择该子网的规则是什么?

标签: amazon-web-servicesaws-lambdaamazon-vpcsubnetnetwork-interface

解决方案


据推测,AWS 的明智选择是选择与函数将与之交互的目标端点位于同一子网内的 ENI。这将避免路由的开销,无论开销多么小。如果 lambda 函数未连接到与目标端点相同的子网,则子网选择可能是随机的或某些未记录的方法。我想运行一些实验会给你答案。


推荐阅读