gpt4 book ai didi

amazon-web-services - 什么会触发为访问 VPC 资源的 AWS Lambdas 创建 ENI

转载 作者:行者123 更新时间:2023-12-04 08:02:05 26 4
gpt4 key购买 nike

我们部署了多个 lambda,可以使用 VpcConfig 访问我们的 VPC。环境。

我知道 AWS Lambda 通常按需创建 lambda,但如果您让它们连接到您的 VPC,那么 AWS 将(在某个时候)在 VpcConfig 中指定的子网之一上创建 ENI。并附加 lambda 容器以允许它访问您的 VPC。

但究竟是什么触发了 ENI 的创建和附加?我注意到 lambda 和 ENI 之间没有 1 对 1 的映射,ENI 和子网之间也没有。还有什么决定了 ENI 连接到哪个子网?

如果我手动运行为我们的 VPC 配置的测试 lambda(到 ping localhost ),它永远不会创建 ENI。所以我猜这是因为它没有尝试访问网络上的任何内容。

最佳答案

这需要了解 Lambda 容器和容器复用。首次调用 Lambda 函数时,会创建一个 Lambda 容器并将 Lambda 函数部署到容器中。如果您使用 VPC 设置配置了该功能,则该容器将被分配一个 ENI。然后,下次调用该函数时,如果该容器仍然存在并部署了该函数,并且当前未被另一个调用使用,它将重新使用该容器(因此无需创建新的 ENI)。如果容器正忙于处理另一个调用,则将使用新的 ENI 部署第二个容器来处理挂起的调用。当容器闲置一段时间后,Lambda 服务会自动删除容器和附加的 ENI。

Also what decides which subnet the ENI attaches to?



当您为 VPC 访问配置 Lambda 函数时,您需要列出 VPC 中要部署到的一个或多个子网。我不相信亚马逊已经发布了实际的算法,但它似乎使用循环算法在配置的子网之间传播容器创建。出于实际目的,您可以考虑在每次创建新的 Lambda 容器时“随机”选择一个子网。我假设它还会检查子网中是否有可用的 IP 地址,或者如果在给定子网中获取新 ENI 的 IP 有问题,则故障转移到另一个子网,但同样,我不知道有记录任何地方。

关于amazon-web-services - 什么会触发为访问 VPC 资源的 AWS Lambdas 创建 ENI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47214781/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com