我的 Lambda 访问我的 VPC 上的资源,因此按照文档中的说明,我为 Lambda 赋予了创建网络接口(interface)的角色。我假设 ENI 已被重用,但看起来每次调用都在创建一个新的 ENI,这会导致引发错误Lambda was not able to create an ENI in the VPC of the Lambda function because the limit for Network Interfaces has been reached.
我搜索了谷歌,但找不到解决此问题的最佳方法。除了定期手动删除这些 ENI 之外,还有更好的方法吗?
最佳答案
正如 Mark 建议的那样,问题是我的 AWS Lambda 没有 DeleteNetworkInterface在 lambda 设置为的角色(策略)中指定的操作。通过提供适当的策略,Lambda 现在会在完成时分离并删除 ENI。
{
"Effect": "Allow",
"Resource": "*",
"Action": [
"ec2:DescribeInstances",
"ec2:CreateNetworkInterface",
"ec2:AttachNetworkInterface",
"ec2:DescribeNetworkInterfaces",
"ec2:DeleteNetworkInterface",
"ec2:DetachNetworkInterface",
"ec2:ModifyNetworkInterfaceAttribute",
"ec2:ResetNetworkInterfaceAttribute",
"autoscaling:CompleteLifecycleAction"
]
}
关于amazon-web-services - Lambda 每次调用都会创建 ENI : Hitting limit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35990747/