如何解决 Amazon EFS 集成的 Lambda 函数调用问题?

如何解决 Amazon EFS 集成的 Lambda 函数调用问题?

我使用 Amazon Elastic File System(Amazon EFS)集成调用了一个 AWS Lambda 函数,收到了一条错误消息。
如何解决 Amazon EFS 集成的 Lambda 函数调用问题? 2023-08-17 09:15:09
如何解决 Amazon EFS 集成的 Lambda 函数调用问题? 0
如何解决 Amazon EFS 集成的 Lambda 函数调用问题?
## 简短描述 以下是使用 Lambda 挂载 Amazon EFS [接入点](https://docs.aws.amazon.com/lambda/latest/dg/configuration-filesystem.html#configuration-filesystem-setup?trk=cndc-detail)的先决条件: * Lambda 函数的执行角色必须具有以下 **elasticfilesystem** 权限:\ **elasticfilesystem:ClientMount**\ **elasticfilesystem:ClientWrite**(只读连接不需要) * 您的 Amazon Identify and Access Management(IAM)用户必须具有以下权限:\ **elasticfilesystem:DescribeMountTargets** * [EFS 文件系统](https://docs.aws.amazon.com/lambda/latest/dg/configuration-filesystem.html?trk=cndc-detail)安全组必须允许来自 Lambda 安全组或 IP 地址范围的 NFS(端口 2049)入站流量。 * Lambda 安全组必须允许发往 EFS 安全组或 IP 地址范围的 NFS(端口 2049)出站流量。 * Lambda 函数和 Amazon EFS 接入点必须位于同一亚马逊云科技区域和可用区。 有关详细信息,请参阅[如何创建正确的 EFS 接入点配置以使用 Lambda 函数挂载我的文件系统?](https://repost.aws/zh-Hans/knowledge-center/efs-mount-with-lambda-function?trk=cndc-detail) ## 解决方法 请按照以下故障排除步骤处理 Lambda 函数的错误消息。 ### EFSMountFailureException: 由于权限或配置问题,Lambda 函数无法挂载已配置的 EFS 文件系统。请检查 Lambda 函数的权限。然后确认 EFS 文件系统和接入点已存在且随时可用。有关详细信息,请参阅[函数无法挂载 EFS 文件系统](https://docs.aws.amazon.com/lambda/latest/dg/troubleshooting-invocation.html#troubleshooting-invocation-efsmount?trk=cndc-detail)。 ### EFSMountConnectivityException: Lambda 函数无法使用 NFS 协议(TCP 端口 2049)与已配置的 EFS 文件系统建立网络连接。请检查 Amazon Virtual Private Cloud(Amazon VPC)子网的[安全组和路由配置](https://docs.aws.amazon.com/efs/latest/ug/network-access.html?trk=cndc-detail)。有关详细信息,请参阅[函数无法连接到 EFS 文件系统](https://docs.aws.amazon.com/lambda/latest/dg/troubleshooting-invocation.html#troubleshooting-invocation-efsconnect?trk=cndc-detail)。 ### EFSMountTimeoutException: Lambda 函数能够与已配置的 EFS 文件系统建立网络连接,但挂载操作超时。重试调用 Lambda 函数。如果 Lambda 函数再次超时,请限制函数的[预留并发](https://docs.aws.amazon.com/lambda/latest/dg/configuration-concurrency.html?trk=cndc-detail),以减少 EFS 文件系统的负载量。有关详细信息,请参阅[由于超时,函数无法挂载 EFS 文件系统](https://docs.aws.amazon.com/lambda/latest/dg/troubleshooting-invocation.html#troubleshooting-invocation-efstimeout?trk=cndc-detail)。 ### PermissionError: 权限被拒绝:“/mnt/xyz/abc”: Lambda 无权访问指定的 [Amazon EFS 接入点](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html?trk=cndc-detail)。要对 Amazon EFS 接入点进行故障排除,请参阅[常见的 EFS 接入点配置有哪些?](https://repost.aws/zh-Hans/knowledge-center/efs-access-point-configurations?trk=cndc-detail) 有关详细信息,请参阅[解决 Lambda 中的调用问题](https://docs.aws.amazon.com/lambda/latest/dg/troubleshooting-invocation.html?trk=cndc-detail)。 ## 相关信息 [使用 Amazon EFS 接入点](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html?trk=cndc-detail)