管理挂载目标 - Amazon Elastic File System
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

管理挂载目标

您可以使用为文件系统创建的挂载目标将文件系统挂载到 Amazon EC2 或虚拟私有云 (VPC) 中的其他 Amazon 计算实例。管理文件系统网络可访问性是指管理文件系统的挂载目标。

创建 Amazon EFS 文件系统后,您可以创建挂载目标。对于使用区域存储类的 Amazon EFS 文件系统,您可以在中的每个可用区中创建一个挂载目标 Amazon Web Services 区域。对于单区文件系统,只能在与文件系统相同的可用区中创建单个挂载目标。然后,您可以将文件系统挂载到计算实例上,包括 Amazon EC2 ECS、Amazon 和 Amazon Lambda 您的虚拟私有云 (VPC)。

下图显示了一个区域文件系统,其挂载目标是在中的所有可用区中创建的VPC。该插图显示了在不同VPC子网中启动的三个EC2实例访问 Amazon EFS 文件系统。该图还显示了每个可用区中的一个挂载目标(不考虑每个可用区中的子网数)。

每个可用区只能创建一个挂载目标。如果可用区具有多个子网,如图中的其中一个区域所示,则只能在其中一个子网中创建挂载目标。只要您在可用区中有一个挂载目标,则在其任何子网中启动的EC2实例都可以共享同一个挂载目标。

区域文件系统,其挂载目标位于EC2实例VPC上的三个可用区内。

下图显示一个单区文件系统,在与文件系统相同的可用区中创建了单个挂载目标。使用us-west2c可用区中的EC2实例访问文件系统会产生数据访问费用,因为该可用区与挂载目标位于不同的可用区。

一个区域文件系统,在同一个可用区中创建了一个挂载目标。

挂载目标安全组充当控制流量的虚拟防火墙。例如,它决定哪些客户端可以访问文件系统。本节介绍以下内容:

  • 管理挂载目标安全组和启用流量。

  • 将文件系统挂载到客户端上。

  • NFS级别权限注意事项。

    最初,只有 Amazon EC2 实例上的根用户才拥有文件系统的 read-write-execute 权限。本主题讨论NFS级别权限,并提供一些示例,向您展示如何在常见场景中授予权限。有关更多信息,请参阅 网络文件系统 (NFS) 级别的用户、组和权限

管理挂载目标是指以下活动:

  • 在中创建和删除挂载目标 VPC — 至少应在要访问文件系统的每个可用区中创建一个挂载目标。

  • 更新挂载目标配置 - 创建挂载目标时,会将安全组与挂载目标相关联。安全组充当虚拟防火墙,用于控制进出挂载目标的流量。您可以添加入站规则以控制对挂载目标的访问,从而控制对文件系统的访问。创建挂载目标后,您可能需要修改分配给它们的安全组。

您可以使用、为文件系统创建挂载目标 Amazon Web Services Management Console Amazon CLI,也可以使用以编程方式为文件系统创建挂载目标。 Amazon SDKs使用控制台时,可以在首次创建文件系统时或创建文件系统之后创建挂载目标。有关在创建文件系统时使用 Amazon EFS 控制台创建挂载目标的说明,请参阅使用自定义设置创建文件系统(控制台)

使用以下过程为现有 Amazon EFS 文件系统添加或修改挂载目标。

管理 Amazon EFS 文件系统上的挂载目标
  1. 登录 Amazon Web Services Management Console 并打开 Amazon EFS 控制台,网址为 https://console.aws.amazon.com/efs/

  2. 在左侧导航窗格中,选择文件系统文件系统页面显示您账户中的EFS文件系统。

  3. 选择要管理其挂载目标的文件系统的名称文件系统 ID 以显示文件系统详细信息页面,来选择该文件系统。

  4. 选择网络以显示现有挂载目标列表。

  5. 选择管理以显示可用区页面并进行修改。

    在此页面上,对于现有挂载目标,可以添加和移除安全组,或者删除挂载目标。也可以创建新挂载目标。

    注意

    对于单区文件系统,只能创建单个挂载目标,它位于与文件系统相同的可用区中。

    • 要从挂载目标中移除安全组,请选择安全组 ID 旁边的 X

    • 要向挂载目标添加安全组,请选择选择安全组以显示可用安全组列表。或者,在列表顶部的搜索字段中输入安全组 ID。

    • 要将挂载目标排入删除队列,请选择移除

      注意

      在删除挂载目标之前,先卸载文件系统。

    • 要添加挂载目标,请选择添加挂载目标。此选项仅适用于使用EFS区域存储类的文件系统,并且每个可用区中尚不存在该的挂载目标 Amazon Web Services 区域。

  6. 选择保存以保存任何更改。

更改 Amazon EFS 文件系统(控制台)VPC

要更改文件系统的网络配置,必须删除文件系统的所有现有挂载目标。VPC

  1. 打开 Amazon Elastic File System 控制台,网址为https://console.aws.amazon.com/efs/

  2. 在左侧导航窗格中,选择文件系统文件系统页面显示您账户中的EFS文件系统。

  3. 对于要更改的文件系统,请选择名称文件系统 ID。VPC将显示文件系统详细信息页面。

  4. 选择网络以显示现有挂载目标列表。

  5. 选择管理。将显示可用区页面。

  6. 移除页面上显示的所有挂载目标。

  7. 选择保存以保存更改并删除挂载目标。网络选项卡显示挂载目标状态为正在删除

  8. 当所有挂载目标状态都显示为已删除时,选择管理。将显示可用区页面。

  9. VPC从 “虚拟私有云” (VPC) 列表中选择新的。

  10. 选择添加挂载目标以添加新挂载目标。对于添加的每个挂载目标,输入以下内容:

    • 可用区

    • 子网 ID

    • IP 地址,或将其设置为自动

    • 一个或多个安全组

  11. 选择 “保存” 以实现VPC和挂载目标更改。

注意

对于单区文件系统,只能创建单个挂载目标,它位于与文件系统相同的可用区中。

创建挂载目标 (CLI)
  • 要创建挂载目标,请使用create-mount-targetCLI命令(对应的操作是CreateMountTarget),如下所示。

    $ aws efs create-mount-target \ --file-system-id file-system-id \ --subnet-id subnet-id \ --security-group ID-of-the-security-group-created-for-mount-target \ --region aws-region \ --profile adminuser

    以下示例显示了带有示例数据的命令。

    $ aws efs create-mount-target \ --file-system-id fs-0123467 \ --subnet-id subnet-b3983dc4 \ --security-group sg-01234567 \ --region us-east-2 \ --profile adminuser

    成功创建挂载目标后,Amazon 会EFS返回挂载目标描述,如JSON以下示例所示。

    { "MountTargetId": "fsmt-f9a14450", "NetworkInterfaceId": "eni-3851ec4e", "FileSystemId": "fs-b6a0451f", "LifeCycleState": "available", "SubnetId": "subnet-b3983dc4", "OwnerId": "23124example", "IpAddress": "10.0.1.24" }
检索文件系统的装载目标列表 (CLI)
  • 您还可以使用以下方法检索为文件系统创建的挂载目标列表 describe-mount-targetsCLI命令(对应的操作是DescribeMountTargets),如下所示。

    $ aws efs describe-mount-targets --file-system-id fs-a576a6dc
    { "MountTargets": [ { "OwnerId": "111122223333", "MountTargetId": "fsmt-48518531", "FileSystemId": "fs-a576a6dc", "SubnetId": "subnet-88556633", "LifeCycleState": "available", "IpAddress": "172.31.25.203", "NetworkInterfaceId": "eni-0123456789abcdef1", "AvailabilityZoneId": "use2-az2", "AvailabilityZoneName": "us-east-2b" }, { "OwnerId": "111122223333", "MountTargetId": "fsmt-5651852f", "FileSystemId": "fs-a576a6dc", "SubnetId": "subnet-44223377", "LifeCycleState": "available", "IpAddress": "172.31.46.181", "NetworkInterfaceId": "eni-0123456789abcdefa", "AvailabilityZoneId": "use2-az3", "AvailabilityZoneName": "us-east-2c" }, { "OwnerId": "111122223333", "MountTargetId": "fsmt-5751852e", "FileSystemId": "fs-a576a6dc", "SubnetId": "subnet-a3520bcb", "LifeCycleState": "available", "IpAddress": "172.31.12.219", "NetworkInterfaceId": "eni-0123456789abcdef0", "AvailabilityZoneId": "use2-az1", "AvailabilityZoneName": "us-east-2a" } ] }
要删除现有的装载目标 (CLI)
  • 要删除现有的挂载目标,请使用delete-mount-target Amazon CLI 命令(相应的操作是DeleteMountTarget),如下所示。

    注意

    在删除挂载目标之前,先卸载文件系统。

    $ aws efs delete-mount-target \ --mount-target-id mount-target-ID-to-delete \ --region aws-region-where-mount-target-exists

    以下是使用示例数据的示例:

    $ aws efs delete-mount-target \ --mount-target-id fsmt-5751852e \ --region us-east-2 \
修改现有挂载目标的安全组
  • 要修改对挂载目标有效的安全组,请使用modify-mount-target-security-group Amazon CLI 命令(对应的操作是ModifyMountTargetSecurityGroups)替换任何现有的安全组,如下所示。

    $ aws efs modify-mount-target-security-groups \ --mount-target-id mount-target-ID-whose-configuration-to-update \ --security-groups security-group-ids-separated-by-space \ --region aws-region-where-mount-target-exists \ --profile adminuser

    以下是使用示例数据的示例:

    $ aws efs modify-mount-target-security-groups \ --mount-target-id fsmt-5751852e \ --security-groups sg-1004395a sg-1114433a \ --region us-east-2

有关更多信息,请参阅 教程:使用创建EFS文件系统并将其挂载到EC2实例上 Amazon CLI