安装您的 Amazon EFS 文件系统自动 - Amazon Elastic File System
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

如果我们为英文版本指南提供翻译,那么如果存在任何冲突,将以英文版本指南为准。在提供翻译时使用机器翻译。

安装您的 Amazon EFS 文件系统自动

您可以通过两种方式,将 Amazon EC2 实例配置为当 EFS 文件系统重新启动时自动挂载该文件系统:

  • 在使用启动实例向导创建新的 EC2 实例时。

  • 使用 EFS文件系统条目更新 EC2 的 /etc/fstab 文件。

这两种方法都使用 EFS 挂载帮助程序来挂载文件系统。挂载帮助程序是 amazon-efs-utils 工具集的一部分。

这些 amazon-efs-utils 工具可用于在 Amazon Linux 和 Amazon Linux 2 Amazon 系统映像 (AMI) 上安装。有关 amazon-efs-utils,参见 使用 amazon-efs-utils 工具. 如果您使用的是另一个LinuxDistribution(例如RedHatEnterpriseLinux(RHEL)),请手动构建和安装 amazon-efs-utils...有关详细信息,请参阅 在其他 Linux 发行版上安装 amazon-efs-utils 软件包.

配置EC2实例以在启动时装载EFS文件系统

使用 EC2 启动实例向导创建新的 Amazon EC2 Linux 实例时,可以将该实例配置为自动挂载您的 Amazon EFS 文件系统。EC2 实例会在第一次启动时自动挂载文件系统,并且在重新启动时也会自动挂载文件系统。

在执行此过程之前,请确保您已创建 Amazon EFS 文件系统。有关更多信息,请参阅 Amazon EFS 入门练习中的步骤 1. 创建您的 Amazon EFS 文件系统

注意

您不能将 Amazon EFS 与基于 Microsoft Windows 的 Amazon EC2 实例结合使用。

在启动并连接到 Amazon EC2 实例之前,如果您还没有密钥对,则需要创建一个密钥对。按照 Amazon EC2 中的使用 Amazon EC2 用户指南(适用于 Linux 实例) 进行设置中的步骤创建密钥对。如果您已有一个密钥对,则可在此练习中使用该密钥对。

将 EC2 实例配置为在启动时自动挂载 EFS 文件系统

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

  2. 选择 Launch Instance

  3. 步骤1: 选择亚马逊机器图像(AMI),在列表顶部找到亚马逊LinuxAMI,然后选择 选择.

  4. 步骤2: 选择实例类型,选择 下一步: 配置实例详细信息

  5. 步骤3: 配置实例详细信息,提供以下信息:

    • 对于 Network (网络),为您装载的 EFS 文件系统所在的同一 VPC 选择条目。

    • 对于 Subnet (子网),在任何可用区中选择一个默认子网。

    • 对于 File system (文件系统),选择要装载的 EFS 文件系统。文件系统 ID 旁边显示的路径是 EC2 实例将使用的装载点,您可以更改此装载点。

    • Advanced Details (高级详细信息) 下,将自动生成 User data (用户数据),并包括挂载您在 File systems (文件系统) 下指定的 EFS 文件系统所需的命令。

  6. 选择 Next (下一步)。Add Storage (下一步: 添加存储)

  7. 选择 Next (下一步)。添加标签

  8. 命名您的实例并选择 下一步: 配置安全组

  9. 步骤6: 配置安全组,设置 分配安全组选择现有安全组. 选择默认安全组以确保它能够访问您的 EFS 文件系统。

    您不能使用该安全组通过安全外壳 (SSH) 访问您的 EC2 实例。对于通过 SSH 进行访问,您稍后可以编辑默认安全性并添加一个允许 SSH 的规则/新安全组。您可以使用以下设置:

    • Type SSH

    • 协议 TCP

    • 端口范围 22.

    • 任何地方0.0.0.0/0

  10. 选择 Review and Launch

  11. 选择启动

  12. 选中您创建的密钥对的复选框,然后选择启动实例

您的 EC2 实例现已配置为在启动或重新启动时装载 EFS 文件系统。

使用/etc/fstab自动安装

自动重新装载您的 Amazon EFS 文件系统目录 Amazon EC2 实例重新启动,使用文件 /etc/fstab...TheThethe /etc/fstab 文件包含有关文件系统的信息。命令 mount -a,在实例启动期间运行时,将在所列的文件系统中装载 /etc/fstab...此过程使用EFS装载助手装载文件系统,需要在ec2实例上安装。

挂载帮助程序是 amazon-efs-utils 工具集的一部分,可用于在 Amazon Linux 和 Amazon Linux 2 Amazon 系统映像 (AMI) 上安装。有关在 Amazon Linux 或 Amazon Linux 2 AMI 上安装 amazon-efs-utils 的更多信息,请参阅在 Amazon Linux 上安装 amazon-efs-utils 软件包。如果您使用的是另一个LinuxDistribution(例如RedHatEnterpriseLinux(RHEL)),请手动构建和安装 amazon-efs-utils...有关详细信息,请参阅 在其他 Linux 发行版上安装 amazon-efs-utils 软件包.

注意

确保您已创建 Amazon EFS 文件系统,然后才能更新 EC2 实例的 /etc/fstab 文件。有关更多信息,请参阅 Amazon EFS 入门练习中的步骤 1. 创建您的 Amazon EFS 文件系统

更新 EC2 实例中的 /etc/fstab 文件

  1. 连接到您的 EC2 实例。

    • 要从运行 macOS 或 Linux 的计算机连接到您的实例,请为 SSH 命令指定 .pem 文件。要执行该操作,请使用 -i 选项和私有密钥路径。

    • 要从运行 Windows 的计算机连接到您的实例,可以使用 MindTerm 或 PuTTY。要使用 PuTTY,您需要安装它并将 .pem 文件转换为 .ppk 文件。

    有关更多信息,请参阅 Amazon EC2 用户指南(适用于 Linux 实例) 中的以下主题:

  2. 在编辑器中打开 /etc/fstab 文件。

  3. 使用 IAM 授权或 EFS 访问点,自动挂载您的 EFS 文件系统:

    • 要使用 IAM 授权自动挂载到具有实例配置文件的 Amazon EC2 实例,请将以下行添加 /etc/fstab 文件中。

      file-system-id:/ efs-mount-point efs _netdev,tls,iam 0 0
    • 要使用凭证文件通过 IAM 授权自动挂载到 Linux 实例,请将以下行添加到 /etc/fstab 文件中。

      file-system-id:/ efs-mount-point efs _netdev,tls,iam,awsprofile=namedprofile 0 0
    • 要使用 EFS 访问点自动挂载文件系统,请将以下行添加到 /etc/fstab 文件中。

      file-system-id efs-mount-point efs _netdev,tls,accesspoint=access-point-id 0 0
    警告

    请在自动挂载文件系统时使用 _netdev 选项,它用于指定网络文件系统。如果缺少 _netdev,您的 EC2 实例可能会停止响应。出现该结果是因为,需要在计算实例启动其网络后初始化网络文件系统。有关更多信息,请参阅 自动挂载失败,并且实例没有响应。)

    有关更多信息,请参阅 安装带 IAM 授权安装在EFS接入点上

  4. 保存对文件所做的更改。

  5. 通过将带 'fake' 选项的 mount 命令与 'all''verbose' 选项结合使用来测试 fstab 条目。

    $ sudo mount -fav home/ec2-user/efs : successfully mounted

您的 EC2 实例现已配置为每次重启时都挂载 EFS 文件系统。

注意

在某些情况下,无论挂载的 Amazon EFS 文件系统的状态如何,都可能需要启动您的 Amazon EC2 实例。在这些情况下,将 nofail 选项添加到 /etc/fstab 文件中的文件系统条目中。

您添加到 /etc/fstab 文件的代码行将执行以下操作。

字段 Description

file-system-id:/

您的 Amazon EFS 文件系统的 ID。您可以从控制台中获取该 ID,也可以从 CLI 或 AWS 开发工具包中以编程方式获取该 ID。

efs-mount-point

EFS 文件系统在 EC2 实例上的挂载点。

efs

文件系统的类型。在使用挂载帮助程序时,该类型始终为 efs

mount options

文件系统的挂载选项。这是一个逗号分隔列表,包含以下选项:

  • _netdev – 该选项向操作系统指示文件系统位于需要网络访问的设备上。该选项禁止实例挂载文件系统,直到在客户端上启用了网络。

  • tls – 启用传输中数据加密。

  • iam – 使用此选项可以使用 IAM 授权挂载到具有实例配置文件的 Amazon EC2。使用 iam 挂载选项还需要使用 tls 选项。有关更多信息,请参阅 使用 IAM 控制 NFS 对 Amazon EFS 的访问。)

  • awsprofile=namedprofile – 将此选项与 iamtls 选项结合使用,以使用凭证文件通过 IAM 授权挂载到 Linux 实例。有关 EFS 访问点的更多信息,请参阅使用 IAM 控制 NFS 对 Amazon EFS 的访问

  • accesspoint=access-point-id – 将此选项与 tls 选项结合使用以通过 EFS 访问点进行挂载。有关 EFS 访问点的更多信息,请参阅使用 Amazon EFS 访问点

0

非零值表示文件系统应该备份 dump...对于EFS,该值应为 0.

0

fsck 在启动时检查文件系统的顺序。对于 EFS 文件系统,该值应为 0,表示 fsck 不应在启动时运行。