微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

具有 S3 和 EFS 随机失败的 VPC 中的 AWS Lambda

如何解决具有 S3 和 EFS 随机失败的 VPC 中的 AWS Lambda

我有一个在 VPC 中运行的 lambda 函数,带有 EFS 和 S3 的访问点。它大部分时间都可以工作,但函数随机失败(例如十分之一)并显示错误消息 Error from cloudfront。检查 API 网关日志,我发现此错误Lambda invocation Failed with status: 408Execution Failed due to configuration error: The function Couldn't connect to the Amazon EFS file system with access point arn:aws:elasticfilesystem:eu-west-1:123456789:access-point/fsap-123456789

堆栈是这样配置的:

我使用 CIDR 块 10.0.0.0/26 创建了一个 VPC

我用 CIDR 块 10.0.0.x/28 创建了 4 个子网

其中 2 个子网(可用区 A 和 B)与使用 VPC 创建的认路由表相关联。

另外两个子网(可用区 A 和 B)与我创建的第二个路由表相关联。

在我的 serverless.yml(是的,我使用的是无服务器框架)中,我将我的 lambda 函数关联到与认表关联的子网。

我使用控制台创建了一个 EFS,并将其关联到与第二个路由表关联的子网。然后我在 yml 中为 EFS 创建一个访问点。

到目前为止,一切都很好。使用 EFS 只有我的功能有效,我每次都可以访问 EFS。

但是,当我为 S3 创建端点(遵循本指南:https://aws.amazon.com/fr/blogs/aws/new-vpc-endpoint-for-amazon-s3/)并将其关联到我的认路由表时,它可以工作并且我的 lambda 函数可以访问 S3 和 EFS,但它只能工作像 90% 的时间,我不知道为什么。我想我的网络确实没有正确配置,并且两个接入点都以某种方式发生冲突,但是我在这里错过了什么?谢谢。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。