创建亚马逊 EFS 文件系统 - Amazon Elastic File System
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

创建亚马逊 EFS 文件系统

接下来,您可以学习如何使用Amazon Web Services Management Console和创建 Amazon EFS 文件系统Amazon CLI。

如果您不熟悉 Amazon EFS,我们建议您完成入门练习。本练习提供了基于控制台的 end-to-end 说明,用于在您的虚拟私有云 (VPC) 中创建和访问文件系统。有关更多信息,请参阅开始使用

要求

本节介绍创建 Amazon EFS 文件系统的要求和先决条件。

创建令牌和等性

等性可确保 API 请求只完成一次。对于等势请求,如果原始请求成功完成,则后续请求不会产生其他影响。这对于防止在您与 Amazon EFS API 交互时创建重复任务非常有用。

Amazon EFS API 支持客户端请求令牌的等效性。客户端请求令牌是您在创建任务请求时指定的唯一字符串。

客户端请求令牌可以是任何包含最多 64 个 ASCII 字符的字符串。如果您在成功请求后的一分钟内重复使用客户端请求令牌,API 将返回原始请求的任务详细信息。

如果您使用控制台,它会替您生成令牌。如果您在控制台中使用自定义创建流程,则为您生成的创建令牌采用以下格式:

"CreationToken": "console-d215fa78-1f83-4651-b026-facafd8a7da7"

如果您 QuickCreate 使用服务推荐设置创建文件系统,则创建令牌的格式如下:

"CreationToken": "quickCreated-d7f56c5f-e433-41ca-8307-9d9c0f8a77a2"

所需权限

要创建 EFS 资源,例如文件系统和接入点,您必须拥有相应的 API 操作和资源的 Amazon Identity and Access Management (IAM) 权限。

创建 IAM 用户并使用用户策略向他们授予执行 Amazon EFS 操作的权限。也可以使用角色来授予跨账户权限。Amazon Elastic File System 还使用一个 IAM 服务相关角色,其中包括Amazon Web Services代表您呼叫他人所需的权限。有关管理 API 操作权限的更多信息,请参阅亚马逊 Elastic File System 的身份和访问管理

创建文件系统时的配置选项

您可以使用 Amazon EFS 控制台或使用 Amazon Command Line Interface (Amazon CLI) 来创建文件系统。您也可以直接使用软件Amazon开发工具包或 Amazon EFS API 以编程方式创建文件系统。如果您使用的是 Amazon EFS API 或Amazon软件开发工具包,则可以使用 CreateFileSystem EFS API 操作来创建文件系统策略。

使用控制台或中的自定义创建流程创建 Amazon EFS 文件系统时Amazon CLI,您可以为以下文件系统功能和配置选项选择设置。

存储类别

存储类别决定了 Amazon EFS 文件系统在中存储数据的冗余度Amazon Web Services 区域。您可以选择以下文件系统的可用性和持久性:

  • 选择 “标准” 会创建使用 EFS 标准存储类的文件系统,该存储类可在内的所有可用区中以冗余方式存储文件系统数据和元数据。Amazon Web Services 区域您也可以在中的每个可用区中创建挂载目标Amazon Web Services 区域。标准版提供最高级别的可用性和耐用性。

  • 选择 O ne Zon e 会创建一个使用 EFS One Zone 存储类的文件系统,这些存储类在单个可用区内以冗余方式存储文件系统数据和元数据。使用 EFS One Zone 存储类的文件系统只能有一个挂载目标。此挂载目标必须位于创建文件系统的可用区中。

    Amazon EFS One Zone 存储类将数据存储在单个Amazon可用区中。因此,如果发生影响可用区内所有数据副本的灾难或其他故障,或者可用区遭到破坏,存储在这些存储类别中的数据可能会丢失。

如果您选择一个区域,则可以选择在其中创建文件系统的可用区。

自动备份

使用控制台创建文件系统时,默认情况下自动备份始终处于启用状态。使用 CLI 或 API 创建文件系统时,只有在创建使用 EFS One Zone 存储类的文件系统时,才会默认启用自动备份。有关更多信息,请参阅自动备份

EFS 生命周期管理和 EFS 智能分层

EFS Intelligent-Tiering 使用生命周期管理,根据访问模式自动将文件移入和移出成本较低的不频繁访问 (IA) 存储类别。使用创建文件系统时Amazon Web Services Management Console,文件系统的生命周期策略将使用以下默认设置进行配置:

  • 过渡到 IA 的时间设置为自上次访问后的 30 天

  • IA 过渡设置为 “”。

使用Amazon CLI、Amazon EFS API 或Amazon软件开发工具包创建文件系统时,不能同时设置生命周期策略。必须等到文件系统创建完毕,然后使用 PutLifecycleConfiguration API 操作更新生命周期配置。有关更多信息,请参阅亚马逊 EFS 生命周期管理

加密

您可以在创建文件系统时启用静态加密。如果您为文件系统启用静态加密,则存储在其上的所有数据和元数据都将被加密。您可以在以后挂载文件系统时启用传输中加密。有关 Amazon EFS 加密的更多信息,请参阅亚马逊 EFS 中的数据加密

要在 VPC 中创建文件系统挂载目标,您必须指定 VPC 子网。控制台会预先填充您账户中选定的 VPC 列表。Amazon Web Services 区域首先,您要选择 VPC,然后控制台会列出 VPC 中的可用区。对于每个可用区,您可以从列表中选择一个子网,也可以使用默认子网(如果存在)。选择子网后,您可以在子网中指定可用的 IP 地址,也可以让 Amazon EFS 自动选择地址。

吞吐量模式

有三种吞吐量模式可供选择:

  • 弹性吞吐量(推荐)— 提供实时自动向上和向下扩展的吞吐量,以满足工作负载的性能需求。

    注意

    弹性吞吐量模式仅适用于配置了通用性能模式的文件系统。

  • 预配置吞吐量-提供您指定的吞吐量级别,与文件系统的大小无关。

  • 突增吞吐量 — 提供的吞吐量可随文件系统上 EFS 标准存储中的数据量而扩展。

有关更多信息,请参阅吞吐量模式

注意

使用弹性吞吐量和预配置吞吐量模式会产生额外费用。有关更多信息,请参阅 Amazon EFS 定价

性能模式

在创建文件系统时,还要选择性能模式。有两种性能模式可供选择:通用模式和最大 I/O 模式。

  • 通用模式的每次操作延迟最低,建议用于所有文件系统。

  • Maxi/O 模式是上一代性能类型,专为高度并行化的工作负载而设计,这些工作负载可以容忍比通用模式更高的延迟。最大 I/O 模式支持一组有限的 EFS 特性和功能。例如,最大 I/O 不能用于 EFS One Zone 文件系统或使用弹性吞吐量模式的文件系统。

重要

由于 Max I/O 的每次操作延迟较高,因此我们建议对所有文件系统使用通用性能模式。

有关更多信息,请参阅性能模式

使用 Amazon EFS 控制台创建具有自定义设置的文件系统

本节介绍使用 Amazon EFS 控制台创建具有自定义设置的 EFS 文件系统的过程,而不是使用服务推荐的设置。有关使用服务推荐设置创建文件系统的更多信息,请参阅步骤 1:创建您的亚马逊 EFS 文件系统

使用控制台创建具有自定义设置的 Amazon EFS 文件系统分为四个步骤:

  • 步骤 1-配置常规文件系统设置,包括存储类和吞吐量模式。

  • 步骤 2-配置文件系统网络设置,包括虚拟私有云 (VPC) 和挂载目标。对于每个挂载目标,设置可用区、子网、IP 地址和安全组。

  • 步骤 3-(可选)创建文件系统策略以控制 NFS 客户端对文件系统的访问。

  • 步骤 4-查看文件系统设置,进行任何更改,然后创建文件系统。

步骤 1:配置文件系统设置
  1. 登录Amazon Web Services Management Console并打开亚马逊 EFS 控制台,网址为 https://console.aws.amazon.com/efs/

  2. 选择 “创建文件系统”,打开 “创建文件系统” 对话框。

  3. 选择 “自定义” 来创建自定义文件系统,而不是使用服务推荐的设置来创建文件系统。文件系统设置页面打开。

  4. 对于 “常规” 设置,请执行以下操作。

    1. (可选)输入文件系统的名称

    2. 对于存储类别,请选择以下选项之一:

      • 选择标准创建使用 EFS 标准和 EFS 标准不频繁访问 (IA) 存储类的文件系统。EFS 标准存储类在内的所有可用区中以冗余方式存储文件系统数据和元数据。Amazon Web Services 区域标准版提供最高级别的可用性和耐用性。

      • 选择一个区域来创建使用 EFS 单区域和 EFS 单区域不频繁访问 (IA) 存储类的文件系统。EFS One Zone 存储类在单个可用区内以冗余方式存储文件系统数据和元数据。

        如果您选择 “一个区域”,请选择要在其中创建文件系统的可用区域,或者保留默认设置。有关更多信息,请参阅EFS 存储类

    3. 默认情况下,自动备份处于开启状态。您可以通过清除该复选框来关闭自动备份。有关更多信息,请参阅备份您的Amazon EFS 文件系统

    4. 对于生命周期管理,默认策略将 “过渡到 IA” 设置为上次访问后 30 天,从 IA 过渡到 “”。如果要使用 EFS 智能分层,请选择何时将文件系统转换为不频繁访问 (IA) 存储类别。有关更多信息,请参阅亚马逊 EFS 生命周期管理

    5. 对于加密,静态数据加密在默认情况下处于启用状态。默认情况下,Amazon EFS 使用您的 Amazon Key Management Service (Amazon KMSaws/elasticfilesystem) EFS 服务密钥 ()。要选择用于加密的其他 KMS 密钥,请展开 “自定义加密设置”,然后从列表中选择一个密钥。或者,输入您要使用的 KMS 密钥的 KMS 密钥 ID 或亚马逊资源名称 (ARN)。

      如果您需要创建新密钥,请选择创建Amazon KMS key以启动Amazon KMS控制台并创建新密钥。

      您可以通过清除该复选框来关闭静态数据的加密。

  5. 对于性能设置,请执行以下操作:

    1. 对于吞吐量模式,默认选择弹性模式。

      • 要使用预配置吞吐量模式,请选择预配置模式,然后在预配置吞吐量 (MiB/s) 中输入要为文件系统请求预配置的吞吐量。“最大读取吞吐量” 的显示量是您输入的吞吐量的三倍。

      • 要使用突增吞吐量模式,请选择突增。

      Amazon EFS 文件系统以其他请求速率的三分之一计量读取请求。进入吞吐量模式后,将显示文件系统每月成本的估计值。文件系统可用后,您可以更改吞吐量模式。

      有关根据性能需求选择正确的吞吐量模式的更多信息,请参阅吞吐量模式

    2. 对于 “性能” 模式,默认为 “通用”。要更改性能模式,请展开 “其他设置”,然后选择 “最大 I/O”。

      文件系统可用后,您无法更改性能模式。有关更多信息,请参阅性能模式

      重要

      由于 Max I/O 的每次操作延迟较高,因此我们建议对所有文件系统使用通用性能模式。

  6. (可选)向文件系统添加标签键值对。

  7. 选择 “下一步” 配置文件系统的网络访问权限。

步骤 2:配置网络访问权限

在步骤 2 中,您将配置文件系统的网络设置,包括 VPC 和挂载目标。


            创建 EFS 文件系统的第 2 步,使用 Amazon EFS 控制台配置网络设置。
  1. 选择您希望 EC2 实例连接到文件系统的虚拟私有云 (VPC)。有关更多信息,请参阅管理文件系统网络可访问性

  2. 对于挂载目标,您可以为文件系统创建一个或多个挂载目标。对于每个挂载目标,设置以下属性:

    • 可用区-默认情况下,挂载目标是在中的每个可用区中配置的Amazon Web Services 区域。如果您不想在特定可用区中安装挂载目标,请选择移除以删除该区域的挂载目标。在您计划从中访问文件系统的每个可用区中创建一个挂载目标,这样做不收取任何费用。

    • 子网 ID-从可用区域中的可用子网中进行选择。默认子网是预先选择的。

    • IP 地址 — 默认情况下,Amazon EFS 会自动从子网中的可用地址中选择 IP 地址。或者,您可以输入子网中的特定 IP 地址。尽管装载目标只有一个 IP 地址,但它们是冗余的、高度可用的网络资源。

    • 安全组-您可以为装载目标指定一个或多个安全组。有关更多信息,请参阅对 Amazon EC2 实例和挂载目标使用 VPC 安全组

      要添加其他安全组或更改安全组,请选择选择安全组并从列表中添加其他安全组。如果您不想使用默认安全组,可以将其删除。有关更多信息,请参阅创建安全组

  3. 选择添加挂载目标,为没有挂载目标的可用区创建挂载目标。如果为每个可用区配置了挂载目标,则此选项不可用。

  4. 选择 “下一步” 以设置文件系统策略。

步骤 3:创建文件系统策略(可选)

或者,您可以为文件系统创建文件系统策略。EFS 文件系统策略是一项 IAM 资源策略,用于控制 NFS 客户端对文件系统的访问。有关更多信息,请参阅使用 IAM 控制文件系统数据访问权限


            创建 EFS 文件系统(可选)创建文件系统策略的第 3 步。
  1. 策略选项中,您可以选择可用的预配置策略的任意组合:

    • 默认情况下阻止 root 用户访问

    • 默认情况下强制执行只读访问权限

    • 对所有客户端强制执行传输中加密

  2. 使用策略编辑器自定义预配置的策略或创建自己的策略。当您选择其中一个预配置的策略时,JSON 策略定义将出现在策略编辑器中。您可以编辑 JSON 以创建您选择的策略。要撤消更改,请选择 “清除”。

    预配置的策略在策略选项中再次可用。

  3. 选择 “下一步” 查看并创建文件系统。

步骤 4:审核并创建
  1. 查看每个文件系统配置组。此时,您可以通过选择 “编辑” 对每个组进行更改。

  2. 选择 “创建” 以创建您的文件系统并返回到 “文件系统” 页面。

    顶部的横幅显示正在创建新的文件系统。当文件系统可用时,标题中会显示访问新文件系统详细信息页面的链接。

使用创建文件系统 Amazon CLI

使用时Amazon CLI,您可以按顺序创建这些资源。首先,创建一个文件系统。然后,您可以使用相应的Amazon CLI命令为文件系统创建挂载目标和任何其他可选标记。

以下示例adminuser用于--profile参数值。您必须使用适当的用户配置文件来提供您的凭据。有关的信息Amazon CLI,请参阅Amazon Command Line Interface用户指南》Amazon CLI中的安装

  • 要创建使用 EFS 标准存储类并启用自动备份的加密文件系统,请使用 Amazon EFS create-file-system CLI 命令(相应的操作是CreateFileSystem),如下所示。

    aws efs create-file-system \ --creation-token creation-token \ --encrypted \ --backup \ --performance-mode generalPurpose \ --throughput-mode bursting \ --region aws-region \ --tags Key=key,Value=value Key=key1,Value=value1 \ --profile adminuser

    例如,以下create-file-system命令在中创建文件系统us-west-2Amazon Web Services 区域。该命令指定 MyFirstFS 作为创建令牌。有关可以在其中创建 Amazon EFS 文件系统的列表,请参阅Amazon Web Services 一般参考。Amazon Web Services 区域

    aws efs create-file-system \ --creation-token MyFirstFS \ --backup \ --encrypted \ --performance-mode generalPurpose \ --throughput-mode bursting \ --region us-west-2 \ --tags Key=Name,Value="Test File System" Key=developer,Value=rhoward \ --profile adminuser

    成功创建文件系统后,Amazon EFS 以 JSON 格式返回文件系统描述,如以下示例所示。

    { "OwnerId": "123456789abcd", "CreationToken": "MyFirstFS", "Encrypted": true, "FileSystemId": "fs-c7a0456e", "CreationTime": 1422823614.0, "LifeCycleState": "creating", "Name": "Test File System", "NumberOfMountTargets": 0, "SizeInBytes": { "Value": 6144, "ValueInIA": 0, "ValueInStandard": 6144 }, "PerformanceMode": "generalPurpose", "ThroughputMode": "bursting", "Tags": [ { "Key": "Name", "Value": "Test File System" } ] }
  • 以下示例使用availability-zone-name属性创建了一个在us-west-2a可用区中使用 One Zone 存储类的文件系统。

    aws efs create-file-system \ --creation-token MyFirstFS \ --availability-zone-name us-west-2a \ --backup \ --encrypted \ --performance-mode generalPurpose \ --throughput-mode bursting \ --region us-west-2 \ --tags Key=Name,Value="Test File System" Key=developer,Value=rhoward \ --profile adminuser

    成功创建文件系统后,Amazon EFS 以 JSON 格式返回文件系统描述,如以下示例所示。

    { "AvailabilityZoneId": "usw-az1", "AvailabilityZoneName": "us-west-2a", "OwnerId": "123456789abcd", "CreationToken": "MyFirstFS", "Encrypted": true, "FileSystemId": "fs-c7a0456e", "CreationTime": 1422823614.0, "LifeCycleState": "creating", "Name": "Test File System", "NumberOfMountTargets": 0, "SizeInBytes": { "Value": 6144, "ValueInIA": 0, "ValueInStandard": 6144 }, "PerformanceMode": "generalPurpose", "ThroughputMode": "bursting", "Tags": [ { "Key": "Name", "Value": "Test File System" } ] }

    Amazon EFS 还提供 describe-file-systems CLI 命令(相应的 API 操作是DescribeFileSystems),您可以使用该命令检索账户中的文件系统列表,如下所示。

    aws efs describe-file-systems \ --region aws-region \ --profile adminuser

    Amazon EFS 会返回您在指定区域中Amazon Web Services 账户创建的文件系统的列表。