lambda + efs - 安装与接入点

Rya*_*Mes 7 amazon-web-services aws-lambda amazon-efs

我尝试将 aws lambda 和 efs 一起使用,这样我就可以执行超过默认 lambda 存储限制 500mb 的操作。我很困惑Local mount pathAccess point之间的区别。

本地挂载路径是一个术语,用于描述文件系统在现有文件系统中的挂载位置,而访问点(也有自己的路径)是应用程序在代码中引用的位置?或者引用哪条路径实际上并不重要?

例如

AccessPointResource:
    Type: 'AWS::EFS::AccessPoint'
    Properties:
      FileSystemId: !Ref FileSystemResource
      PosixUser:
        Uid: "1000"
        Gid: "1000"
      RootDirectory:
        CreationInfo:
          OwnerGid: "1000"
          OwnerUid: "1000"
          Permissions: "0777"
        Path: "/myefs"
Run Code Online (Sandbox Code Playgroud)

这就是我创建接入点和直接在 lambda 上指定的安装路径以进行测试的方法。

在此输入图像描述

我想我遇到的主要困惑是为什么有 2 条路径,它们之间有什么区别,以及我应该在 lambda 中使用哪一条?

Mar*_*cin 9

您的 EFS上可以有许多目录:

/myefs
/myefs2
/myefs3
/myefs4
/important
/images
Run Code Online (Sandbox Code Playgroud)

AccessPointResource将仅启用对/myefs. 该文件夹基本上是任何使用该接入点的人的根目录。不会通过此访问点公开任何其他文件夹。

/mnt/efs是lambda 容器中的挂载文件夹。因此,您的函数将能够访问/myefs挂载在其本地目录树中的名为/mnt/efs.

  • 我现在正在关注 - AccessPoint 与 efs 相关,而挂载文件夹与 lambda 相关。这些将两者联系在一起。从 lambda 保存文件时,需要将它们保存到已安装的文件夹中,并通过 AccessPoint 传播到 efs。AccessPoint 路径在 lambda 中不可用作保存到的目录。这可能是显而易见的,但对我来说不是:/ (3认同)