- 产品›
- 存储›
- Amazon EFS›
- Amazon EFS 常见问题
Amazon EFS 常见问题
一般性问题
什么是 Amazon Elastic File System?
Amazon Elastic File System(EFS)旨在提供无服务器、完全弹性的文件存储,让您无需预置或管理存储容量和性能即可共享文件数据。只需在 AWS 管理控制台中选择几个选项即可创建文件系统。这些文件系统可供 Amazon Elastic Compute Cloud(EC2)实例、Amazon 容器服务(Amazon Elastic Container Service [ECS])、Amazon Elastic Kubernetes Service [EKS] 以及 AWS Fargate)和 AWS Lambda 函数通过文件系统界面(使用标准操作系统文件 I/O API)访问。它们还支持完整的文件系统访问语义(例如强一致性和文件锁定)。
Amazon EFS 文件系统可以自动将数据容量从 GB 级扩展到 PB 级,无需预置存储。数十、数百甚至数千个计算实例可以同时访问一个 Amazon EFS 文件系统,且 Amazon EFS 可以为每个计算实例提供稳定的性能。Amazon EFS 经过专门设计,具有高持久性和高可用性。Amazon EFS 没有最低费用和设置成本,您只需按实际使用量付费。
Amazon EFS 支持哪些使用案例?
Amazon EFS 旨在为广泛的工作负载和应用程序提供实用性能,包括大数据和分析、媒体处理工作流、内容管理、Web 服务和主目录。
Amazon EFS 标准存储类非常适合于需要最高级别持久性和可用性的工作负载。
EFS One Zone 存储类非常适合开发、构建和暂存环境等工作负载。它们也是分析、模拟和媒体转码以及不需要多可用区弹性的本地数据备份或副本的理想选择。
分别应在何时使用 Amazon EFS、Amazon Elastic Block Store (Amazon EBS) 和Amazon S3?
AWS 提供多种云存储服务来支持各种存储工作负载。
EFS 是一种文件存储服务,用于与 Amazon 计算(EC2、容器、无服务器)和本地服务器配合使用。EFS 可以提供文件系统界面、文件系统访问语义(例如强一致性和文件锁定)以及可供多达数千个 EC2 实例同时访问的存储。
Amazon EBS 是一项可与 EC2 配合使用的数据块级存储服务。对于需要从单个 EC2 实例低延迟访问数据的工作负载,EBS 可为其提供高性能服务。
Amazon S3 是一项对象存储服务。S3 通过可以在任何地方访问的 Internet API 来提供数据访问。
详细了解考虑使用 Amazon EFS 时应评估的因素。
Amazon EFS 目前在哪些区域提供?
请参阅区域性产品和服务,了解 Amazon EFS 服务在不同区域的具体提供情况。
Amazon EFS 如何上手?
要使用 Amazon EFS,您必须拥有 AWS 账户。如果还没有 AWS 账户,您可以注册一个 AWS 账户并立即享受 AWS Free Tier。
创建 AWS 账户之后,请参阅 EFS 入门指南,开始使用 EFS。您可以通过控制台、AWS Command Line Interface (CLI) 和 EFS API(以及各种语言的软件开发工具包)来创建文件系统。
如何从 EC2 实例访问文件系统?
要访问您的文件系统,请使用标准 Linux 挂载命令和文件系统的 DNS 名称将文件系统挂载到基于 Linux 的 EC2 实例上。为了简化对 Amazon EFS 文件系统的访问,我们建议使用 Amazon EFS 挂载助手实用程序。挂载完成后,您就可以像使用本地文件系统一样,使用您文件系统中的文件和目录。
EFS 使用网络文件系统版本 4(NFS v4)协议。有关如何从 EC2 实例访问文件系统的分步示例,请参阅此处的指南。
如何管理文件系统?
Amazon EFS 是一项完全托管的服务,因此所有文件存储基础设施均由我们为您管理。使用 Amazon EFS,您不需要部署和维护复杂的文件系统基础设施。Amazon EFS 文件系统可以随着您增减文件的操作自动进行扩展和收缩,因此您不需要进行存储的采购和预置工作。
您可以通过控制台、CLI 或 EFS API(以及各种语言的软件开发工具包)来管理文件系统。通过控制台、API 和软件开发工具包,您可以创建和删除文件系统、配置文件系统的访问方式、创建和编辑文件系统标签、启用预置吞吐量和生命周期管理等功能,以及显示文件系统的详细信息。
如何将数据加载到文件系统?
AWS DataSync 提供一种快速的方法,可将现有文件系统与 Amazon EFS 安全同步。 DataSync 适用于任何网络连接,包括 AWS Direct Connect 或 AWS VPN。 EFS、DataSync 和 Direct Connect,不带 Amazon 或 AWS。您也可以使用标准 Linux 复制工具将数据文件移至 Amazon EFS。
有关从本地服务器访问文件系统的更多信息,请参阅此常见问题的 本地访问部分。
有关将数据迁移到 Amazon 云的更多信息,请参阅云数据迁移页面。
规模与性能
我可以存储多少数据?
您可以使用 Amazon EFS 存储数 PB 数据。Amazon EFS 文件系统具有弹性,可以随着您增减文件的操作自动进行扩展和收缩。无需预置文件系统的大小,只需按实际使用量付费。
一个文件系统可以连接多少个 EC2 实例?
Amazon EFS 支持将一个到数千个 Amazon Elastic Compute Cloud (Amazon EC2) 实例,且该实例同时连接到一个文件系统。
我可以创建多少个文件系统、挂载目标或接入点?
有关 Amazon EFS 限制的更多信息,请访问 Amazon EFS 限制页面。
Amazon EFS 文件系统预期的延迟、吞吐量和 IOPS 性能如何?
Amazon EFS 文件系统的预期性能取决于其特定配置(例如存储类和吞吐量模式)和特定文件系统操作类型(读取或写入)。有关 Amazon EFS 文件系统的预期延迟、最大吞吐量和最大 IOPS 性能的更多信息,请参阅文件系统性能文档。
我的文件系统有哪些吞吐量模式?
弹性吞吐量是默认的吞吐量模式,适用于大多数文件工作负载。使用默认的弹性吞吐量模式时,性能会随着您的工作负载活动自动扩展,您只需为使用的吞吐量(每月为文件系统传输的数据)付费。如果您不确定应用程序的峰值吞吐量需求,或者如果您的应用程序非常不稳定,基线活动较低(例如,当您为峰值需求预置时,它平均使用不到 5% 的容量),则弹性吞吐量是理想选择。
如果您知道工作负载的峰值吞吐量要求并且您希望工作负载消耗应用程序峰值吞吐能力的更高份额(平均超过 5%),您可以选择将吞吐量模式更改为预置吞吐量。
您可以提供的吞吐量取决于您选择的吞吐量模式。请参阅有关文件系统性能的文档,了解更多信息。 请访问文件系统性能,了解更多信息。
如何监控 Amazon EFS 文件系统?
您可以使用 Amazon CloudWatch 或者 Amazon EFS 控制台中的“监控”选项卡来监控文件系统。请访问关于监控 Amazon EFS 的文档,了解更多信息。
持久性和可用性
Amazon EFS 提供哪些类型的文件系统?
Amazon EFS 提供两种文件系统类型,可以根据自己的持久性和可用性需求进行选择。EFS 区域文件系统(推荐)通过在多个可用区(AZ)内和之间存储数据,提供最高级别的持久性和可用性。EFS 单区文件系统在单个可用区内冗余存储数据,因此这些文件系统中的数据将不可用,并且可能会在可用区内发生灾难或其他故障时丢失。
Amazon EFS 的持久性如何?
Amazon EFS 可在特定年份提供 99.999999999%(11 个九)的持久性。EFS 区域文件系统旨在在可用区丢失时保留数据。由于 EFS One Zone 文件系统将数据存储在单个可用区中,因此在可用区内发生灾难或其他故障时,存储在这些存储类中的数据可能会丢失。
与在任何环境中一样,最佳做法都是做好备份,并采取防止意外删除的保护措施。对于 Amazon EFS 数据,最佳实践包括使用 Amazon EFS 复制跨区域复制文件系统,以及使用 AWS Backup 进行有效的、定期测试的备份。使用 EFS 单区存储类的文件系统默认配置为在创建文件系统时自动备份文件。
Amazon EFS 如何实现高度的持久性和可用性?
每个 EFS 区域文件系统对象(例如目录、文件和链接)都会在多个可用区冗余存储。使用 EFS One Zone 文件系统,您的数据将以冗余方式存储在单个可用区中。Amazon EFS 可以快速检测和修复任何丢失冗余,从而抵御同时发生的设备故障。
使用 AZ 特定的 EFS 挂载目标访问 EFS 文件系统数据,这些挂载目标旨在于 AZ 内高度可用。EFS 区域文件系统支持从其所在区域的所有 AZ 中的 EFS 挂载目标进行并行访问。这意味着您可以将您的应用程序设计为从一个可用区失效转移到该区域中的其他可用区,以实现最高级别的应用程序可用性。EFS 单区文件系统在单个可用区中仅支持一个高度可用的 EFS 挂载目标,这意味着在该可用区内发生灾难或其他故障期间,数据可能会变得不可用。有关可用性的更多信息,请参阅 Amazon EFS 服务等级协议。
使用 Amazon EFS One Zone 文件系统时,我还应该考虑哪些其他故障模式?
如果整个可用区发生中断,EFS One Zone 文件系统将无法恢复。在可用区发生中断时,您将会遭遇可用性损失,因为您的文件系统数据不会复制到不同的可用区。在 AZ 内发生影响所有数据副本的灾难或故障期间,您可能会丢失尚未使用 EFS 备份或 EFS 复制保护的数据。默认情况下,所有 EFS One Zone 文件系统都已启用 EFS 备份。
存储类和生命周期管理
Amazon EFS 提供哪些存储类?
Amazon EFS 提供三种存储类:EFS 标准、EFS 不频繁访问和 EFS Archive。频繁访问的数据往往有更高的性能需求,因此 EFS 提供基于 SSD 的 EFS 标准类别,旨在提供亚毫秒级的延迟。对于不经常访问的数据,您可以使用两种经过成本优化的 EFS 存储类,它们可提供较低的两位数毫秒延迟:EFS 不频繁访问(IA),专为每季度仅访问几次的数据而设计;EFS Archive,专为每年访问几次或更少的数据而设计。对于不频繁访问的数据,EFS IA 的成本比 EFS 标准降低多达 95%。EFS Archive 为更不频繁访问的数据提供更具成本优化的体验,与 EFS 不频繁访问相比,其成本最多可降低 50%,访问数据时的请求费用更高。在使用 EFS 的默认弹性吞吐量模式的 EFS 区域文件系统上对 EFS Archive 进行优化并提供支持。有关更多信息,请参阅 EFS 存储类和 EFS 定价。
如何将文件移至 EFS 标准、IA 和 Archive 存储类?
通过启用 EFS 生命周期管理,可以根据访问模式在存储类别之间自动对文件进行分层。默认的推荐生命周期策略将在连续 30 天没有访问后将文件从 EFS 标准分层到 EFS IA,在连续 90 天没有访问后将文件分层到 EFS Archive。您还可以根据自上次访问文件以来的天数指定用于在存储类之间转换文件的自定义策略。
您还可以启用 EFS 智能分层,以便在访问文件时将 EFS IA 和 EFS Archive 中的文件升级回 EFS 标准,从而为这些文件的后续读取提供更快的、EFS 标准的亚毫秒级延迟。升级后,这些文件将根据您的生命周期策略转换回相应的 IA 或 Archive 存储类。
EFS 成本优化型 IA 和 Archive 存储类预计可以给我带来什么样的性能?
与 EFS 标准类相比,EFS IA 和 Archive 提供相同的吞吐量和 IOPS 可扩展性,但具有更高的首字节延迟(即,较低的两位数毫秒读取延迟对比 EFS 标准上的亚毫秒读取延迟)。有关更多信息,请参阅 Amazon EFS 性能文档。
EFS 的成本优化型存储类、EFS IA 和 EFS Archive 是否有最短存储期?
EFS IA 没有最短存储期。分层到 EFS Archive 的数据的最短存储期为 90 天。对于在最短存储期之前删除或截断的文件,将根据文件在执行相应操作之前的大小按比例收取剩余天数的费用。
EFS 的成本优化型存储类、EFS IA 和 EFS Archive 是否有最小文件大小?
EFS 成本优化型存储类(IA、Archive)专为存储不频繁访问的非活动数据而设计,这些数据通常由较大的文件组成。IA 或 Archive 没有最小文件大小,但分层到这些存储类别且小于 128 KiB 的文件将产生存储费用,就像它们是 128 KiB 一样。
数据保护
什么是 Amazon EFS 复制?
Amazon EFS 复制将您的文件系统数据复制到所选 AWS 区域中的新文件系统或现有文件系统中。它通过自动传输增量更改使两个文件系统保持同步,无需额外的基础设施或自定义流程。EFS 复制旨在提供恢复点目标(RPO)和恢复时间目标(RTO)分钟数,帮助您实现合规性和业务连续性目标。
为什么应该使用 EFS 复制?
您应该使用 EFS 复制来维护相距数英里的文件系统副本,以进行灾难恢复、合规性或业务连续性规划。如果发生灾难,您可以失效转移到副本文件系统,并在几分钟内恢复关键业务应用程序的操作。灾难事件结束后,您可以通过仅将增量更改从副本传输回原始文件系统来进行失效自动恢复。启用 EFS 复制后,您的应用程序可以在只读模式下使用副本文件系统,以实现低网络延迟跨区域访问。借助 Amazon EFS 复制,您可以独立于原始文件系统配置副本文件系统,以使用成本优化型存储类和较短的过期生命周期管理策略,从而节省高达 92% 的成本。EFS 复制还简化了使用 Amazon CloudWatch 监控 RPO 状态并发出警报的过程。
我的复制文件系统是否具有时间点一致性?
否。EFS 复制不提供时间点一致复制。EFS 复制会在 Amazon CloudWatch 上发布称为 TimeSinceLastSync 的时间戳指标。至少在发布时间之前对源文件系统所做的所有更改都将被复制到副本中。在记录时间之后对您的源文件系统进行的更改可能不会被复制。您可以使用 Amazon CloudWatch 监控您的 EFS 复制的运行状况。如果由于灾难恢复事件而中断复制流程,源文件系统中的文件可能已经传输但尚未复制到它们的最终位置。这些文件及其内容可以在副本文件系统的根目录下的由 EFS 复制创建的“丢失+已找到”目录中找到。
什么是 Amazon EFS 备份?
Amazon EFS 备份由 AWS Backup 提供支持,后者是一种完全托管的备份服务,可以集中管理和自动执行 Amazon EFS 文件系统的备份。它通过按计划在集中位置自动创建文件系统的增量副本来保护您的文件系统免受数据丢失事件的影响。AWS Backup 提供了一个集中式备份控制台、自动备份计划、备份保留管理和还原活动。要了解更多信息,请阅读 AWS Backup 文档或常见问题。
Amazon EFS 备份是如何工作的?
Amazon EFS 与 AWS Backup 原生集成。您可以使用 EFS 控制台、API 和 AWS 命令行界面(AWS CLI)启用自动备份,自动备份使用默认备份计划和 AWS Backup 推荐设置。在初始备份期间,会在备份保管库中创建整个文件系统的副本。该文件系统的所有后续备份本质上都是增量备份,即仅复制已更改、添加或删除的文件和目录。对于每次增量备份,AWS Backup 都会保留必要的参考数据,以便进行完全还原。如果数据丢失,您可以使用 AWS Backup 控制台或 CLI 对文件系统进行全部或部分还原。
安全性
如何控制哪些 Amazon EC2 实例可以访问我的文件系统?
如何使用 IAM 策略来管理文件系统访问权限?
借助 Amazon EFS 控制台,您可以将常见策略应用到文件系统,如禁用根访问权限、强制执行只读访问或者强制对文件系统的所有连接加密。此外,您还可以应用更高级的策略,例如向特定 IAM 角色(包括其他 AWS 账户中的角色)授予访问权限。
什么是 Amazon EFS 接入点?
EFS 接入点是一个网络端点,用户和应用程序可以使用它来访问 EFS 文件系统,并根据 IAM 中定义的细粒度访问控制和基于策略的权限强制执行文件和文件夹级别的权限(POSIX)。
为什么应该使用 Amazon EFS 接入点?
通过 EFS 接入点,您可以灵活地以云原生方式为您的文件应用程序创建和管理多租户环境,从而帮助简化数据共享。与控制文件系统访问的传统 POSIX ACL 或控制身份验证的 Kerberos 不同,两者都需要复杂的设置、管理和维护,并且通常会带来风险,EFS 接入点与 IAM 集成,使云原生应用程序能够使用基于 POSIX 的共享文件存储。可从 Amazon EFS 接入点受益的使用案例包括基于容器的环境(开发人员构建和部署自己的容器)、需要访问生产数据的数据科学应用程序、以及与其他 AWS 账户共享文件系统中的特定目录。
Amazon EFS 接入点的工作原理是什么?
在创建 Amazon EFS 接入点时,您可以为使用该接入点的所有连接配置操作系统用户和组,以及根目录。如果您指定根目录的拥有者,则 EFS 将使用您在客户端第一次连接到接入点时提供的权限自动创建根目录。此外,您还可以更新文件系统的 IAM 策略以应用于接入点。例如,您可以应用需要特定 IAM 身份的策略来连接到指定的接入点。有关更多信息,请参阅 Amazon EFS 用户指南。
什么是 Amazon EFS 加密?
Amazon EFS 提供对静态数据和传输数据进行加密的能力。
数据在静态时以透明的方式加密,在读取时以透明的方式解密,因此您无需修改应用程序。加密密钥由 AWS KMS 托管,无需构建和维护安全的密钥管理基础设施。
动态数据加密使用行业标准传输层安全协议 (TLS) 1.2 来加密在客户端和 EFS 文件系统之间发送的数据。
静态和动态数据加密可以一起配置或单独配置,以帮助满足您特殊的安全要求。
有关更多详细信息,请参阅关于加密的用户文档。
什么是 AWS Key Management Service(KMS)?
AWS KMS 是一项托管服务,让您可以更加轻松地创建和控制加密数据所用的加密密钥。AWS KMS 与 AWS 服务(包括 EFS、EBS 和 S3)集成,让您可以更轻松地使用您管理的加密密钥来加密您的数据。 AWS KMS 还与 AWS CloudTrail 集成,为您提供所有密钥的使用日志,以帮助您满足监管和合规性需求。
如何为 Amazon EFS 文件系统启用加密?
您可以使用 CLI 或 SDK 在 EFS 控制台中启用静态加密。在 EFS 控制台中创建新文件系统时,选择“创建文件系统”,然后选中复选框以启用加密。
通过使用 Amazon EFS 挂载助手,您可以在 Amazon EFS 文件系统与其客户端之间进行动态加密。
静态和动态数据加密可以一起配置或单独配置,以帮助满足您特殊的安全要求。
有关更多详细信息,请参阅关于加密的用户文档。
加密是否会影响 Amazon EFS 的性能?
加密数据对 I/O 延迟和吞吐量的影响微乎其微。
本地访问
如何从本地数据中心中的服务器访问 Amazon EFS 文件系统?
要更改为从本地访问 EFS 文件系统,您必须在本地数据中心和 Amazon Virtual Private Cloud(VPC)之间建立 Direct Connect 或 AWS VPN 连接。
您可以使用标准 Linux 挂载命令将 Amazon EFS 文件系统挂载到您的本地 Linux 服务器,该命令使用 NFS v4.1 协议挂载文件系统。
有关从本地服务器访问 Amazon EFS 文件系统的更多信息,请参阅文档。
如果能够从本地服务器访问 Amazon EFS 文件系统,我可以做些什么?
您可以将您的 Amazon EFS 文件系统挂载到您的本地服务器,并可以使用标准 Linux 工具和脚本或 AWS DataSync 将文件数据移入和移出 Amazon EFS。将文件数据移入和移出 Amazon EFS 文件系统的功能支持以下三种使用案例。
第一种,您可以将数据从本地数据中心迁移到 EFS 文件系统,并且永久驻留其中。
第二种,您可以支持云爆发工作负载,以将您的应用程序处理分流到云中。您可以将数据从您的本地服务器移动到 Amazon EFS 文件系统,然后在 Amazon VPC 中 EC2 实例的一个集群上对其进行分析,并将结果永久存储在您的 Amazon EFS 文件系统中或将结果迁移回您的本地服务器。
第三种,您可以定期将您的本地文件数据复制到 Amazon EFS,以支持备份和灾难恢复情况。
是否可以同时从本地数据中心服务器和 EC2 实例访问 Amazon EFS 文件系统?
符合。您可以同时从您的本地数据中心服务器和 Amazon VPC 中的 EC2 实例访问 Amazon EFS 文件系统。在访问文件系统的所有 EC2 实例和本地服务器之间,Amazon EFS 提供相同的文件系统访问语义,比如数据强一致性和文件锁定。
将文件数据移入和移出本地服务器时,有哪些建议的最佳实践?
由于远距离传输数据存在传播延迟,因此您的本地数据中心和 Amazon VPC 之间的网络连接可能存在几十毫秒的网络延迟。如果您的文件操作已经实现了序列化,则网路连接的延迟将直接影响您的读取和写入吞吐量;实际上,您在一段时间内可以读取或写入的数据量受限于完成每次读取和写入操作所需的时间。要最大限度地提高吞吐量,您可以并行执行文件操作,以便 Amazon EFS 可以同时处理多个读取和写入操作。 您可以借助 GNU Parallel 等标准工具并行执行文件数据的复制操作。有关更多信息,请参阅在线文档。
如何将现有数据从本地文件存储复制到 Amazon EFS?
有许多方法可将现有本地数据复制到 Amazon EFS 中。AWS DataSync 提供一种快速简单的方式,可将现有文件系统安全地同步到 EFS,并适用于任何网络,包括 AWS Direct Connect。
AWS Direct Connect 提供了一个高带宽、低延迟的专用网络连接,您可以通过它挂载 EFS 文件系统。完成挂载后,您可以使用 DataSync 将数据复制到 EFS,速度比标准 Linux 复制工具最高快 10 倍。
有关 AWS DataSync 的更多信息,请参阅本常见问题的数据传输部分。
数据传输
我必须将哪些 AWS 本地选项传输到我的文件系统中?
DataSync 是一种在线数据传输服务,可以更快更简单地在本地存储与 Amazon EFS 之间移动数据。DataSync 使用专用协议来加速和保护通过 Internet 或 Direct Connect 传输的数据,速度比开源工具快 10 倍。使用 DataSync,您可以执行一次性数据迁移,传输本地数据以进行及时的云端分析,并自动复制到 AWS 以进行数据保护和恢复。
AWS Transfer Family 是一项完全托管的文件传输服务,为安全文件传输协议(SFTP)、SSL 文件传输协议(FTPS)和文件传输协议(FTP)提供支持。AWS Transfer Family 为您提供完全托管、高度可用的文件传输服务,其中包含自动扩展功能,无需您亲自管理文件传输相关基础设施。您的最终用户的工作流程将保持不变,同时上传和下载的数据将存储在 Amazon EFS 文件系统。
如何将数据传入或传出 Amazon EFS 文件系统?
要开始使用 DataSync,您可以使用控制台或 CLI,通过网络文件系统(NFS)协议将代理连接到您的本地或云中的文件系统,选择 Amazon EFS 文件系统,然后开始复制数据。您必须首先部署可从控制台下载的软件代理,在两个 Amazon EFS 文件系统之间复制文件时除外。
要开始使用 AWS Transfer Family,首先要确保计划分配给 AWS Transfer 的 POSIX 用户可以访问文件系统的目录。然后,您可以使用控制台、CLI 或 API 创建 Transfer Family 终端节点和用户。完成后,您的最终用户可以使用其 SFTP、FTP 或 FTPS 客户端访问存储在 Amazon EFS 文件系统中的数据。
Amazon EFS 数据可以在区域之间传输吗?
您可以使用 DataSync 在两个 Amazon EFS 文件系统(包括不同 AWS 区域的文件系统)之间传输文件。AWS Transfer Family 端点必须与 Amazon EFS 文件系统位于同一区域。
我可以使用另一个 AWS 账户访问我的文件系统吗?
符合。您可以使用 DataSync 将文件复制到另一个 AWS 账户中的 Amazon EFS 文件系统。
您还可以对 Amazon EFS 文件系统进行配置,使您可以使用另一个账户经由 AWS Transfer Family 访问它,只要该账户被授予访问权限即可。要了解有关通过文件系统策略向外部 AWS 账户授予 Transfer Family 权限的更多信息,请参阅文档。
兼容性
现有 AWS 产品与 Amazon EFS 的互操作性和兼容性如何?
EFS 集成了多项其他 AWS 产品,其中包括 CloudWatch、AWS CloudFormation、CloudTrail、IAM 和 AWS 标记服务。
借助 CloudWatch,您可以通过指标来监控文件系统活动。借助 CloudFormation,您可以使用模板来创建和管理文件系统。
借助 CloudTrail,您可以在日志文件中记录所有 EFS API 调用。
借助 IAM,您可以控制谁可以管理您的文件系统。借助 AWS 标记服务,您可以使用自己定义的元数据来对文件系统进行标记。
您可以使用 AWS Budgets 来规划和管理您的 Amazon EFS 文件系统成本。您可以从 AWS 计费和成本管理控制台处理 AWS Budgets。使用 AWS Budgets,为您的 Amazon EFS 文件系统创建每月成本预算。
Amazon EFS 支持哪种类型的锁定?
Amazon EFS 中的锁定遵循适用于建议锁定的 NFS v4.1 协议,并且使您的应用程序可以使用整个文件锁定和字节范围锁定。
文件系统的名称是否像 S3 存储桶名称一样,属于全局性名称?
每个文件系统都有一个自动生成的、在全局范围内唯一的 ID 编号。您可以用名称来标记您的文件系统,这些名称不需要是唯一名称。
定价与计费
Amazon EFS 如何收费?
使用 Amazon EFS,您只需为使用的主存储和备份存储以及 EFS 文件系统的读取、写入和分层活动付费。可以使用弹性吞吐量为读取和写入访问付费(但可以选择使用预置吞吐量预置吞吐量性能前期费用),以及为将数据分层到 EFS 的不频繁访问和 Archive 存储类付费。
Amazon EFS 提供三种存储类别:EFS 标准,可为活跃使用的数据提供亚毫秒的延迟性能;EFS 不频繁访问(EFS IA),针对每季度仅访问几次的数据进行成本优化;以及 EFS Archive,针对每年访问几次或更短时间的长期数据进行成本优化。
EFS 还通过 EFS 备份和 EFS 复制为文件提供数据保护。使用 EFS 备份,您只需为实际使用的备份存储量以及当月恢复的备份数据量付费即可。没有最低消费和设置费用。如需了解更多信息,请访问 AWS Backup。使用 EFS 复制可将您的文件系统复制到您选择的某个区域或可用区(AZ),无需管理额外的基础设施或自定义流程。
您可以使用 Amazon EFS 定价计算器估算您的每月费用。
使用 Amazon EFS 如何收费?
开始使用 Amazon EFS 时,没有安装费,也无需订立合约。每个月底将自动向您收取当月使用费。您可以随时查看当前账单周期的费用,只需登录您的 Amazon Web Services 账户,然后选择与您的控制台配置文件关联的“账单控制面板”。
使用 AWS 免费使用套餐*,除 AWS GovCloud 区域之外,您在其他所有 AWS 区域的免费套餐使用量均按月计算,并自动计入账单;未用完的月使用量不会结转到下月。注册后,新 EFS 客户每月可获得 5GB Amazon EFS 标准使用量,为期一年。AWS Free Tier 不适用于存储在 EFS One Zone 文件系统类型中的文件。存在限制条件,详见优惠条款。
Amazon EFS 对以下类型的使用收费。请注意:以下计算假定没有使用 AWS 免费套餐。
使用的存储:
每月的 Amazon EFS 计费金额基于每月的存储空间、吞吐量和数据保护使用情况。存储费用根据当月使用的平均存储空间计算。您的存储用量以“GB/月”为单位进行衡量,月底合计该值,得出您的月度费用。
存储示例
以下示例反映了文件访问模式随时间而变化,并包含每个 EFS IA 和 EFS 存档的定价维度的场景。该示例假设设置了在 EFS 标准、EFS 不频繁访问(IA)和 EFS Archive 之间移动文件的两个 EFS 生命周期策略。
假设您的文件系统位于美国东部(弗吉尼亚州北部)区域。对于包含 31 天的月份,您的文件系统月初在 EFS 标准上存储 200GB 的文件,在 EFS IA 上存储 500GB 的文件,在 EFS Archive 上存储 2TB 的文件。在每月第 15 天,EFS 生命周期管理(不使用智能分层)将 50% 的 EFS 标准文件移至 EFS IA 类,并在 14 天未访问后将 10% 的 EFS IA 文件移至 EFS 存档类。平均而言,您的客户端应用程序每月从 EFS IA 读取 200 GB 的文件,从 EFS Archive 读取 100 GB 的文件。
首先,我们计算按比例分配的存储使用量:
标准存储:
200GB EFS 标准存储,为期 14 天(GB-小时):200GB x 14 天 x(24 小时/天)= 67200 GB-小时
100GB EFS 标准存储,为期 17 天(GB-小时):100GB x 17 天 x(24 小时/天)= 40800 GB-小时
总 EFS 标准存储使用量(GB-小时):67200 GB-小时 + 40800 GB-小时 = 108000 GB-小时
IA 存储:
500GB EFS IA,为期 14 天(GB-小时):500GB x 14 x(24 小时/天)= 168000 GB-小时
从 EFS 标准移至 EFS IA 的 100GB 文件,为期 17 天(GB-小时)= 100GB x 17 x(24 小时/天)= 40800 GB-小时
450GB 的 EFS IA(将 50GB 移至 EFS Archive 后)= 450GB x 17 x(24 小时/天)= 183600 GB-小时
EFS IA 总使用量(GB-小时):168000 GB-小时 + 40800 GB-小时 + 326400 GB-小时 = 392400 GB-小时
存档存储:
2TB EFS IA,为期 31 天(GB-小时):1000 GB x 14 x(24 小时/天)= 1488000 GB-小时
从 EFS IA 移至 EFS Archive 的 50GB 文件存储,为期 17 天(GB-小时):50 GB x 17 x(24 小时/天)= 20400 GB-小时
EFS Archive 存储总使用量(GB-小时):1488000 GB-小时 + 20400 GB-小时 = 1508400 GB-小时
然后,我们将存储使用量换算为 GB/月,计算存储费用:
EFS 标准总费用:108000 GB-小时 x(1 个月/744 小时)x 0.30 USD/GB-月 = 43.55 USD
EFS IA 总费用:392400 GB-小时 x(1 个月/744 小时)x 0.0165 USD/GB-月 = 8.70 USD
EFS Archive 总费用:1508400 GB-小时 x(1 个月/744 小时)x 0.008 USD/GB-月 = 16.22 USD
EFS 存储总费用:43.55 USD + 8.70 USD + 16.22 USD = 68.47 USD
接下来,我们计算 EFS IA 和 EFS Archive 中的文件的访问费用:
IA 数据分层:
数据分层(文件从 EFS 标准移至 EFS IA):100 GB * 0.01 USD/GB = 1.00 USD
IA 读取访问费用:200GB * 0.01 美元/GB = 2.00 美元
弹性吞吐量读取费用:200GB * 0.03 美元/GB = 6.00 美元
EFS IA 分层和访问费用总额:1.00 美元 + 2.00 美元 + 6.00 美元 = 9.00 美元
存档数据分层:
数据分层(文件从不经常访问移至 Archive):50 GB * 0.03 USD/GB = 1.50 USD
存档读取访问费用:100GB *0.03 美元/GB = 3.00 美元
弹性吞吐量读取费用:100GB * 0.03 美元/GB = 3.00 美元
EFS IA 分层和访问费用总额:1.50 美元 + 3.00 美元 + 3.00 美元 = 7.50 美元
EFS 分层和访问费用总额:9.00 美元 + 7.50 美元 = 16.50 美元
最后,我们计算每月的总 EFS 费用:
月度总费用 = 总存储费用 + 总访问费用 = 68.47 USD + 16.50 USD = 84.97 USD(TCO - 0.0315 USD/GB)
已用吞吐量
您可以使用弹性吞吐量访问数据进行读写操作。使用弹性吞吐量时,性能会随着您的工作负载活动自动扩展,您只需为使用的吞吐量(每月为文件系统传输的数据)付费。每月计费的弹性吞吐量金额基于一个月内传输的读写数据,并以“传输的 GB”为单位计量。
如果您知道应用程序的吞吐量使用量和峰值吞吐量要求,则可以使用预置吞吐量。每月计费的预配置吞吐量金额基于超出 EFS 标准允许的当月吞吐量的平均吞吐量,最高可达 AWS 区域中现行的突发基线吞吐量限制,并以“每月 MB/秒”为单位进行计量。
弹性吞吐量示例:
假设您的文件系统位于美国东部(弗吉尼亚州北部)区域,并且在整个月(31 天)有 100GB 的 EFS 标准存储。假设您的工作负载的数据传输包括 75% 的读取操作和 25% 的写入操作,每周 3 天、每天 3 小时驱动 100 MB/s 的峰值吞吐量,其余时间处于闲置状态。
月度弹性吞吐量总费用
假设您所有的数据都传输到 EFS 标准存储,那么到月底,您的 GB 使用量如下:
当月总弹性吞吐量数据(GB):100 MB/s x(60 分钟 x 60 秒 x 3 小时)x 3 天 x 4 周/1000 = 12960 GB
总弹性吞吐量读取数据(GB):75% x 12960 GB = 9720 GB
总弹性吞吐量写入数据(GB):25% x 12960 GB = 3240 GB
然后,我们计算弹性吞吐量的月度总费用:
弹性吞吐量读取数据费用:9720 GB x 0.03 USD/GB = 291.60 USD
弹性吞吐量写入数据费用:3240 GB x 0.06 USD/GB = 194.40 USD
然后,我们计算弹性吞吐量的月度总费用:
每月弹性吞吐量总费用 = 291.60 USD + 194.40 USD = 486.00 USD
预置吞吐量示例:
按照与上面的弹性吞吐量示例相同的假设(您的文件系统位于美国东部(弗吉尼亚州北部)区域,并且在整个月份(31 天)内有 100GB 的 EFS 标准存储。假设您的工作负载的数据传输包括 75% 的读取操作和 25% 的写入操作,每周 3 天、每天 3 小时驱动 100 MB/s 的峰值吞吐量,
其余时间处于闲置状态。每月计费的吞吐量按照预置的超出您的 EFS 标准存储允许的当月存储量的平均吞吐量计算(每 1 GB 标准存储 50 KBps 的基准吞吐量)
基准吞吐量(MB/s-月)= 100 GB 标准存储 * 50 Kbps/1000 = 5 MB/s-月。
可计费的预置吞吐量总量(MB/s-月)= 配置吞吐量 –
基准吞吐量 = 100 MB/s-月 — 5 MB/s-月 = 95 MB/s-月
月度预置吞吐量总费用 = 95 MB/s-月 x 6.00 USDMB/s-月 = 570.00 USD
数据保护
您可以选择使用 EFS 复制或 AWS Backup 来保护您的数据。使用 EFS 复制,您需要支付存储费用、不频繁访问和存档类的访问费用,以及目标文件系统位于不同的 AWS 区域时的数据传输变更费用。使用 AWS Backup,您需要为一个月内备份和还原的平均数据量付费。
复制
此示例反映您在使用 EFS 复制进行跨区域文件系统复制时的场景。该示例关注与 EFS 复制直接相关的成本。
假设您在美国东部(弗吉尼亚州北部)区域有一个 1TB 数据的 EFS 文件系统。此文件系统正被复制到美国西部(俄勒冈)区域。假设目标文件系统使用 7 天 EFS 生命周期管理策略将文件移动到 EFS IA 类。
在刚开始启用复制时,整个来源文件系统被复制到目标文件系统。复制的数据将首先被置于目标文件系统的 EFS 标准类当中。若在 EFS 生命周期管理策略期限(7 天)内未访问此类文件,它们将被移动到 EFS IA 类。
初始同步:
首先,我们要为目标文件系统计算按比例分配的存储使用量:
总 EFS 标准使用量(GB-小时):1,000 GB * 7 天 *(24 小时/天)= 168,000 GB-小时
EFS IA 总使用量(GB-小时):1000 GB * 24 天 *(24 小时/天/一个月 31 天)= 576000 GB-小时
然后,我们将存储使用量换算为 GB-月,并为目标文件系统计算存储费用:
EFS 标准总费用:168000 *(1 个月/744 小时)* 0.30 USD/GB-月 = 67.74 USD
总 EFS IA 费用:576000 *(1 个月/744 小时)* 0.025 USD/GB-月 = 19.36 USD
初始同步的总存储费用 = 67.74 USD + 19.36 USD = 87.10 USD
然后,我们计算源文件系统初次复制到目标文件系统的数据传输费用:
1 TB 数据的总 EFS 复制数据传输费用:1,000 GB * 0.02 USD/GB = 20.00 USD
初始同步总费用 = 初始同步的存储总费用 + 初始同步的数据传输总费用 = 87.10 USD + 20.00 USD = 107.10 USD
增量复制:
假设来源文件系统在 7 天后增加 150 GB 新数据。新数据将被复制到目标文件系统,而且和之前一样将根据生命周期管理策略在 EFS 标准类中驻留 7 天。按比例分配的 150 GB 新数据存储使用量的计算如下:
总 EFS 标准使用量(GB-小时):150 GB * 7 天 x(24 小时/天)= 25,200 GB-小时
EFS IA 总使用量(GB-小时):150 GB * 17 天 *(24 小时/天)= 61200 GB-小时
然后,我们将存储使用量换算为 GB-月,并为添加到目标文件系统的 150 GB 新数据计算存储费用:
EFS 标准总费用:25200 *(1 个月/744 小时)* 0.30 USD/GB-月 = 10.16 USD
EFS IA 总费用:61200 *(1 个月/744 小时)* 0.025 USD/GB-月 = 2.06 USD
增量复制的总存储费用 = 10.16 USD + 2.06 USD = 12.22 USD
最后,我们要计算 150 GB 增量数据的数据传输费用:
增量复制的数据传输总费用:150 GB * 0.02 USD/GB = 3.00 USD
总增量复制费用 = 增量复制的总存储费用 + 增量复制的总数据传输费用 = 12.22 USD + 3.00 USD = 15.22 USD
与 EFS 复制相关的总费用 = 初始同步总费用 + 增量复制总费用 = 107.10 USD + 15.22 USD = 122.32 USD
备份
有关 Backup 定价示例,请参阅 AWS Backup 定价。
有关 EFS 定价的更多信息,请访问 Amazon EFS 定价页面。
定价中包含税费了吗?
除非另行说明,否则我们的价格不包含适用的税费和关税(包括增值税和适用销售税)。使用日本账单地址的客户若要使用 AWS,则需缴纳日本消费税。了解更多。
Amazon EFS 与预调配云解决方案的总拥有成本比较
以下示例解决方案展示了在考虑存储和吞吐量弹性影响的情况下,Amazon EFS 的总拥有成本和有效总拥有成本。使用 Amazon EFS 时,存储和吞吐量会自动扩缩,您无需为未使用的存储或吞吐能力付费。EFS 自动跨多个可用区复制数据以实现高可用性和持久性,并自动跨热存储和冷存储类别对数据进行分层,以便优化成本。
另一方面,非弹性(预调配)云解决方案需要您在峰值使用量下管理存储和吞吐能力,并且不允许减少容量。大多数预调配解决方案提供商建议保持 30-50% 的存储利用率以应对存储增长,同时保持 50% 的吞吐量利用率以应对高峰吞吐量。与 EFS 的弹性模型(该模型不需要任何额外未使用的存储或吞吐量)相比,有效总拥有成本最多可节省 60% 成本。
示例 1:通用型工作负载
假设您的文件系统位于美国东部(弗吉尼亚州北部)区域,某一月的平均存储大小为 2.7TB。您的应用程序执行爆发的读取操作,峰值吞吐量为 25Mbps,一个月内总共传输了 300GB 的数据。
使用 EFS 后,该应用程序将平均 5% 的存储(145TB)存储在 SSD 中,约 20%(527TB)存储在“不频繁访问”类中,剩余的 2027TB 存储在“归档”类中,总存储成本为 68.47 美元。此外,将较少使用的数据分层到“不频繁访问”和“归档”类的工作负载需要支付 2.50 美元,传输 300GB 数据的弹性吞吐量成本为 14.00 美元,总拥有成本为每月每 GB 0.0315 美元。
借助预调配的云解决方案,应用程序可以从存储优化中受益,例如通过压缩将总存储大小减少 50%(1350TB)。根据使用模式,我们预计 5% 的热数据(68TB)将存储在 SSD 中。由于这是预调配的云解决方案,不会自动扩缩,因此我们建议以 50% 的存储利用率运行,并预调配 136TB。其余 95% 的存储(1282TB)存储在较少使用的存储类别中,相当于 90.15 美元的存储成本。此外,根据以 50% 的利用率运行吞吐量的建议,我们预调配了 50Mbps 的吞吐量,总拥有成本为每月 0.0797 美元/每月每 GB。
EFS |
预调配的解决方案 |
|
存储 |
||
平均总存储(每月每 GB) |
2700 |
2700 |
平均总付费存储(每月每 GB) |
2700 |
*1350 |
基于 SSD 的存储(每月每 GB) |
145 |
**136 |
IA 存储(每月每 GB) |
527 |
**1282 |
归档存储(每月每 GB) |
2027 |
0 |
SSD 存储(美元/月) |
43.55 美元 |
34.00 美元 |
冷存储(美元/月) |
8.70 美元 |
56.15 美元 |
归档存储(美元/月) |
16.22 美元 |
|
总存储成本 |
68.47 美元 |
90.15 美元 |
数据分层 |
2.50 USD |
|
|
|
|
吞吐量 |
||
预调配吞吐量(Mbps) |
|
***50 |
传输的数据总量(GB) |
300 |
|
吞吐量成本 |
14.00 美元 |
125.00 美元 |
总成本 |
84.97 美元 |
215.15 美元 |
有效成本(美元/GB) |
0.0315 USD |
0.0797 USD |
EFS 实现的节约(%) |
60% |
*假设压缩等优化可减少 50% 的存储
**假设 5% 的压缩数据存储在 SSD 类中,预调配为以 50% 的利用率运行,并按 0.25 美元/每月每 GB 的费率收费。其余 95% 的压缩数据存储在较少使用的存储类别中,费率为 0.0483 美元/每月每 GB。
***假设吞吐量以 50% 的利用率预调配,费率为 2.50 美元/Mbps。
示例 2:临时数据工作负载
假设您的股票市场建模工作负载每天运行两个小时的分析,并且需要在这两小时的运行时间内存储临时数据。假设您的文件系统位于美国东部(弗吉尼亚州北部)区域,并且在两小时运行时间内平均包含 1024GB 的 SSD 存储。您的应用程序执行爆发的读写操作,峰值吞吐量为 500Mbps,每天总共传输 175GB 的数据。
使用 EFS 后,此应用程序将在 SSD 中每月存储 60 小时(每天 2 小时,持续 30 天)数据,并传输 5250GB 的数据,因此总成本为 222.48 美元/月。
使用预调配的云解决方案后,文件系统可以从存储优化中受益,例如通过压缩减少 50% 的存储空间,但需要额外配置 30% 的缓冲区以支持峰值存储(1024GB * 50% 压缩 + 30% 缓冲区 = 666GB),因此总成本为 1416.50 美元/月。
利用 EFS 的弹性优势,您只需按实际使用量付费,总拥有成本可节省 84%。
EFS |
预调配的解决方案 |
|
存储 |
||
总存储(每月每 GB) |
1024 |
***666 |
每月 SSD 存储小时数 |
*60 |
720 |
SSD 每月存储成本(美元/月) |
25.60 USD |
166.50 美元 |
|
|
|
吞吐量 |
||
预调配吞吐量(Mbps) |
|
500 |
每月传输的数据(GB) |
5250 |
|
吞吐量成本 |
**196.88 美元 |
1250.00 美元 |
总成本 |
222.48 美元 |
1416.50 美元 |
有效成本(美元/GB) |
0.2172 USD |
1.3822 USD |
EFS 实现的节约(%) |
84% |
*假设 EFS 数据每天存储 2 小时,持续 30 天。
**假设混合弹性吞吐量成本为 0.0375 美元/GB
***假设通过压缩等优化减少 50% 的存储,同时额外增加 30% 的缓冲区以支持峰值使用量
从 AWS 服务访问
我能否从 Amazon ECS 容器访问 Amazon EFS?
符合。您可以通过在任务定义中引用 EFS 文件系统从 Amazon ECS 使用 EC2 和 Fargate 启动类型启动的容器化应用程序中访问 EFS。入门说明可参见 ECS 文档。
我能否从 Amazon Elastic Kubernetes Service(EKS)Pod 中访问 Amazon EFS?
符合。您可以使用 EFS CSI 驱动程序,通过 EC2 或 Fargate 启动类型从 Amazon EKS 启动的容器化应用程序访问 EFS。入门说明可参见 EKS 文档。
我能否从 AWS Lambda 函数访问 Amazon EFS?
我能否从 Amazon SageMaker 访问 Amazon EFS?
符合。您可以通过在 CreateTrainingJob 请求中引用 EFS 文件系统来从 Amazon SageMaker 训练任务中访问 EFS 中的训练数据。EFS 还可自动用于 SageMaker Studio 创建的主目录。