如何将 Amazon EFS 卷挂载到我的 Elastic Beanstalk 环境中的实例?

1 分钟阅读
0

我想将 Amazon Elastic File System (Amazon EFS) 卷挂载到我 AWS Elastic Beanstalk 环境中的 Amazon Elastic Compute Cloud (Amazon EC2) 实例上。

简短描述

在 Elastic Beanstalk 环境中,您可以使用 Amazon EFS 创建共享目录,以存储应用程序用户上传或修改的文件。您的应用程序可以将已挂载的 Amazon EFS 卷视为本地存储。因此,您无需更改应用程序代码即可向上扩展到多个实例。

要将 Amazon EFS 卷挂载到您的 Elastic Beanstalk 环境中的 Amazon EC2 实例,您必须在源代码中包含配置文件。

解决方法

1.    创建一个 Amazon EFS 文件系统,然后记下 Amazon EFS ID 和安全组 ID。

2.    要允许连接,请编辑文件系统的安全组规则。规则必须允许从 Elastic Beanstalk 环境中的安全组在端口 2049(网络文件系统 (NFS))上进行入站连接。

3.    更新实例安全组,以允许通过端口 2049 到 Amazon EFS 安全组的出站连接。

**注意:**当您在不同子网中的环境中挂载一个子网的挂载目标时,Amazon EFS 安全组必须允许入站连接。也就是说,它必须允许来自 Amazon Virtual Private Cloud (Amazon VPC) CIDR 的端口 2049 上的入站连接。

4.    在应用程序包的 root 目录中,创建一个名为 .ebextensions 的目录。

5.    向您的目录添加格式化配置文件(YAML 或 JSON)。

重要提示:在配置文件中添加文件系统 ID。将 FILE_SYSTEM_ID: {"Ref" : "FileSystem"} 替换为 FILE_SYSTEM_ID: fs-xxxxxxxx。配置文件包含一个脚本,该脚本将在部署期间将 Amazon EFS 文件系统挂载到实例。

6.    将包含第 5 步中的配置文件的源代码部署到您的 Elastic Beanstalk 应用程序。

7.    要确认您的 Amazon EFS 卷是否已挂载到指定挂载路径上的实例,请运行以下命令:

df -H

相关信息

挂载 EFS 文件系统

将 Elastic Beanstalk 与 Amazon Elastic File System 结合使用

Amazon EFS中的安全性

AWS 官方
AWS 官方已更新 1 年前