

# 在 AWS Lambda 函数上挂载 S3 文件系统
<a name="s3-files-mounting-lambda"></a>

虽然 AWS Lambda 函数在执行期间提供临时本地存储，但许多无服务器工作负载，例如机器学习推理、数据处理和内容管理，都要求访问大型参考数据集、共享文件或永久存储。通过将 S3 文件系统附加到 Lambda 函数，可以轻松地在函数调用之间共享数据，读取大型参考数据文件，并将函数输出写入到持久且共享的存储，所有这些都通过本地挂载路径完成。

![该图显示了 S3 存储桶、S3 文件系统和 AWS Lambda 函数之间的数据流。](http://docs.aws.amazon.com/zh_cn/AmazonS3/latest/userguide/images/S3Files_Lambda_dataflow.png)


## 先决条件
<a name="s3-files-mounting-lambda-prereqs"></a>

在 Lambda 函数上挂载 S3 文件系统之前，请确保已具备以下各项：
+ **文件系统、挂载目标和接入点**：S3 文件系统、至少一个挂载目标和一个接入点必须可用。如果您使用 AWS 管理控制台创建文件系统，S3 Files 会自动在默认 VPC 的每个可用区中创建一个挂载目标，并为该文件系统创建一个接入点（UID/GID 为 1000/1000 且 `/Lambda` 作为接入点范围）。
+ **Lambda 函数**：一个 Lambda 函数，其执行角色有权挂载文件系统。请参阅《AWS Lambda 用户指南》**中的[执行角色和用户权限](https://docs.aws.amazon.com/lambda/latest/dg/configuration-filesystem-s3files.html#configuration-filesystem-s3files-permissions)。
+ **VPC**：Lambda 函数必须与挂载目标位于同一 VPC 中。您分配给 Lambda 函数的子网必须位于具有挂载目标的可用区中。
+ 您已经配置了所需的[安全组](s3-files-prereq-policies.md#s3-files-prereq-security-groups)。

## 如何在 Lambda 函数上挂载 S3 文件系统
<a name="s3-files-mounting-lambda-steps"></a>
+ 在 S3 控制台上，选择左侧导航窗格中的**文件系统**。
+ 选择要在 Lambda 函数上挂载的文件系统。
+ 在**概述**选项卡中，选择**附加到 Lambda 函数**下的**附加**。
+ 从下拉列表中选择一个可用的 Lambda 函数。可用列表仅显示您在其中具有挂载目标的相同 VPC 和子网中的函数。
+ 指定本地挂载路径。
+ 如果您有多个接入点，请选择一个接入点。
+ 选择 **附加**。现在，您下次调用 Lambda 函数时将附加您的文件系统。

有关更多详细信息，请参阅[使用 AWS Lambda 配置 Amazon S3 Files 访问权限](https://docs.aws.amazon.com/lambda/latest/dg/configuration-filesystem-s3files.html)。

您可以使用 [Amazon CloudWatch](s3-files-monitoring-cloudwatch.md) 监控您的文件系统存储、性能、客户端连接和同步错误。