一般性问题
问:什么是 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 性能的更多信息,请参阅文件系统性能文档。
问:问:我的文件系统有哪些吞吐量模式?
默认情况下,Amazon EFS 文件系统旨在提供随文件系统中的存储量扩展的吞吐量,并支持突发到更高级别,每天最多 12 小时。
对于吞吐量密集型工作负载,EFS 提供了两个选项来提供独立于文件系统存储的更高级别的性能:弹性吞吐量和预置吞吐量。如果您不确定应用程序的峰值吞吐量需求,或者如果您的应用程序非常不稳定,基线活动较低(例如,当您为峰值需求配置时,它平均使用不到 5% 的容量),请使用弹性吞吐量。使用弹性吞吐量时,吞吐量性能会随着您的工作负载活动自动扩展,您只需为使用的吞吐量付费。如果您知道工作负载的峰值吞吐量要求并且您希望工作负载消耗应用程序峰值吞吐能力的更高份额(平均超过 5%),请使用预置吞吐量。预置吞吐量旨在提供最高级别的吞吐量一致性,同时提供可预测的计费体验。
您可以提供的吞吐量取决于您选择的吞吐量模式。有关更多信息,请参阅有关文件系统性能的文档。
问:如何监控我的读写吞吐量使用情况?
您可以使用 Amazon CloudWatch 来监控您的吞吐量。 TotalIOBytes、ReadIOBytes、WriteIOBytes 和 MetadataIOBytes 指标反映了您的应用程序正在使用的实际吞吐量。PermittedThroughput 和 MeteredIOBytes 分别反映了按 1:3 的比率对读取请求与其他请求进行计量后的计量吞吐量限制和使用情况。凭借 Amazon EFS 控制台,您可以使用“吞吐量百分比限制”图来监控吞吐量使用情况。如果您使用自定义 CloudWatch 控制面板或其他监控工具,则还可以创建一个 CloudWatch 指标数学表达式,以将 MeteredIOBytes 与 PermittedThroughput 相比较。如果这些值相等,则说明您正在消耗整个吞吐量,应考虑配置“预置吞吐量”或增加已配置的吞吐量。对于突增吞吐量模式文件系统,请监控 BurstCreditBalance 指标,并在余量接近零时收到警报,以确保文件系统以其突增速率运行。
问:弹性吞吐量模式如何计费?
使用弹性吞吐量,您需要为传输的数据量(读取和写入)付费。如果您从不频繁访问存储类访问数据,还需要支付 IA 数据访问费用。
问: 在预置吞吐量模式下,我将如何付费?
在预置吞吐量模式下,您将按使用的存储量和预置的吞吐量分别付费。您需要采用以下维度按小时付费:
- 存储(每月每 GB):您需要按您使用的存储量(每月每 GB)付费。
- 吞吐量(每月每 MB/秒):您需要按您预置的吞吐量(每月每 MB/秒)付费。
问: 当我切换到弹性吞吐量模式后,我的突增积分会怎样?
当您处于弹性吞吐量模式时,您不会累积或消耗任何突增积分。在弹性模式下,您仍然可以在 Amazon CloudWatch 上查看现有的突增积分余额。
存储类和生命周期管理
问:Amazon EFS 提供哪些存储类?
通过 Amazon EFS,您可以选择使用标准或单区存储类创建文件系统。标准存储类在多个可用区中存储数据。单区存储类在单个可用区内冗余存储数据。对于不需要多可用区弹性的工作负载,其价格可比使用标准存储类的文件系统低 47%。
EFS 提供四种存储类:两种标准存储类 EFS 标准和 EFS 标准 – 不频繁访问(EFS 标准 – IA)以及两种单区存储类 EFS 单区和 EFS 单区 – 不频繁访问(EFS 单区 – IA)。
问:如何将文件移至 EFS 标准 – IA 和 EFS 单区 – IA?
启用 Amazon EFS 生命周期管理并选择一种用于文件的定期结束策略即可将文件移动到 EFS 标准 – IA 和 EFS 单区 – IA。生命周期管理可自动将数据从 EFS 标准移动到 EFS 标准 – IA 存储类,或从 EFS 单区移动到 EFS 单区 – IA 存储类。例如,如果文件 1 天未被访问,您可以自动将这些文件从 EFS 标准移动到 EFS 标准 – IA。
问:什么是 EFS 智能分层?
EFS 智能分层旨在为访问模式不断变化的工作负载自动节省成本。EFS 智能分层使用 EFS 生命周期管理来监控工作负载的访问模式。它会自动将在生命周期策略期间(例如 30 天)内未访问的文件从性能优化的存储类(EFS 标准或 EFS 单区)移动到其相应的成本优化的不经常访问存储类(EFS 标准) -不频繁访问或 EFS 单区 - 不频繁访问)。这有助于您利用 IA 存储定价,该定价比 EFS 标准或 EFS 单区文件存储定价低 92%。如果访问模式发生变化并且再次访问该数据,生命周期管理会自动将文件移回 EFS 标准或 EFS 单区,从而降低无限制访问费用的风险。如果文件再次变为不频繁访问,生命周期管理会根据您的生命周期策略将文件转换回适当的 IA 存储类。
问:何时应使用 EFS 智能分层?
当数据访问模式未知时,使用 EFS 智能分层在性能优化型与成本优化型存储类之间自动移动文件。选择自动将文件移动到 EFS 标准 – IA 或 EFS 单区 – IA 的策略以激活 EFS 生命周期管理。此外,选择访问文件后自动将其移回 EFS 标准或 EFS 单区的策略。通过 EFS 智能分层,即使应用程序访问模式未知,或者访问模式随时间发化变化,您仍可节省存储成本。设置了这两种生命周期管理策略后,您只需支付存储类之间的数据转换费用,而无需为重复的数据访问付费。可能有未知访问模式的工作负载示例包括内容管理系统存储的 Web 资产和博客,以及日志、机器学习(ML)推理文件和基因组数据。
问:使用 EFS 标准 – IA 和 EFS 单区 – IA 存储类时支持哪些 Amazon EFS 功能?
使用 EFS 标准 – IA 和 EFS 单区 – IA 存储类时,支持所有 Amazon EFS 功能。小于 128 KiB 的文件不符合生命周期管理的条件,并且将始终存储在 EFS 标准存储类或 EFS 单区存储类中。
问:性能优化型存储类(EFS 标准、EFS 单区)与成本优化型 IA 存储类(EFS 标准 – IA、EFS 单区 – IA)之间有哪些延迟差异?
读取或写入 EFS 标准 – IA 或 EFS 单区 – IA 时,第一字节延迟会高于 EFS 标准或 EFS 单区存储类的延迟。EFS 标准和 EFS 单区存储类旨在提供平均亚毫秒级读取延迟和个位数毫秒级写入延迟。EFS 标准 – IA 和 EFS 单区 – IA 存储类旨在提供平均两位数毫秒的延迟。
问: 我可以针对存储在 EFS 标准 – IA 和 EFS 单区 – IA 存储类中的文件实现多大吞吐量?
在默认的突增吞吐量模式下,您可以针对 Amazon EFS 文件系统驱动的吞吐量与 EFS Standard 或 EFS One Zone 存储类上存储的数据量成线性比例。所有 Amazon EFS 文件系统,不管其大小如何,都能突增到 100MiB/秒的吞吐量。存储在 EFS 标准或 EFS 单区存储类上超过 1TiB 数据的文件系统可以将存储在 EFS 标准或 EFS 单区存储类上的数据每 TiB 突增到 100MiB/s。如果您需要 EFS 标准 - IA 或 EFS 单区 - IA 存储类的更高吞吐量,请使用 Amazon EFS 弹性吞吐量或预置吞吐量。有关更多信息,请参阅 Amazon EFS 性能文档。
数据保护与可用性
问:Amazon EFS 如何实现高持久性和可用性?
默认情况下,对于使用标准存储类的文件系统,每个 EFS 文件系统对象(即目录、文件和链接)均会在多个可用区中进行冗余存储。如果您选择 Amazon EFS 单区存储类,您的数据将以冗余方式存储在单个可用区中。Amazon EFS 可以快速检测和修复任何丢失冗余,从而抵御同时发生的设备故障。使用标准存储类,可以从文件系统所在区域中的所有可用区同时访问文件系统。这意味着您可以将您的应用程序设计为从一个可用区失效转移到该区域中的其他可用区,以实现最高级别的应用程序可用性。挂载目标专门设计为在一个可用区内为所有 EFS 存储类提供高可用性。有关可用性的更多信息,请参阅 Amazon EFS 服务等级协议。
问:Amazon EFS 的持久性如何?
Amazon EFS 可在特定年份提供 99.999999999%(11 个九)的持久性。EFS 标准和 EFS 标准 - IA 存储类设计为可在 AZ 丢失时维持数据。由于 EFS One Zone 存储类将数据存储在单个 AZ 中,因此在 AZ 内发生灾难或其他故障时,存储在这些存储类中的数据可能会丢失。与在任何环境中一样,最佳做法都是做好备份,并采取防止意外删除的保护措施。对于 Amazon EFS 数据,最佳实践包括使用 Amazon EFS 复制跨区域复制文件系统,以及使用 AWS Backup 进行有效的、定期测试的备份。使用 EFS 单区存储类的文件系统默认配置为在创建文件系统时自动备份文件,除非您选择停用此功能。
问:与标准存储类相比,在使用 Amazon EFS One Zone 时,我应该考虑哪些故障模式?
如果整个可用区发生中断,使用 Amazon EFS 单区存储类的文件系统将无法恢复。在可用区发生中断时,您将会遭遇可用性损失,因为您的文件系统数据不会复制到不同的可用区。在 AZ 内发生影响所有数据副本的灾难或故障期间,您可能会丢失尚未使用 Amazon EFS 复制复制的数据。EFS 复制旨在满足恢复点目标(RPO)和恢复时间目标(RTO)分钟数。您可以使用 AWS Backup 存储您的文件系统数据的其他副本,并在您选择的可用区或区域将它们恢复到新的文件系统。由 AWS Backup 创建和管理的 Amazon EFS 文件系统备份数据复制到 3 个可用区,其耐用性为 99.999999999%(11 个 9)。
问:问:如何防止我的 EFS 单区文件系统损失可用区?
您可以使用 Amazon EFS 复制或 AWS Backup 保护您的 EFS 单区文件系统,以防可用区损失。Amazon EFS 复制会将您的文件系统数据复制到另一个区域或同一区域内,无需额外的基础设施,也无需监测和同步数据更改的自定义流程。EFS 复制几乎是连续的,旨在为许多文件系统提供分钟级的恢复点目标(RPO)和恢复时间目标(RTO)。
默认情况下,使用 Amazon EFS 单区存储类的所有文件系统都启用了备份。您可以在创建文件系统时停用此设置。可用区受损期间,您可以将文件数据从最近的备份还原到任何运行可用区的新创建的文件系统。如果您的数据存储在单区存储类中,您可能会在 AZ 损失期间遇到自上次自动备份以来已更改的文件数据丢失的情况。
问:什么是 Amazon EFS 复制?
EFS 复制可以将您的文件系统数据复制到另一个区域或同一区域内,而无需额外的基础设施或自定义流程。Amazon EFS 复制将数据自动透明地复制到区域或者您选择的任何位置的其他文件系统。您可以使用 Amazon EFS 控制台、AWS CLI 和 API 来激活现有文件系统上的复制。EFS 复制连续进行,提供恢复点目标(RPO)和恢复时间目标(RTO)分钟数,帮助您实现合规性和业务连续性目标。
问:为什么应该使用 EFS 复制?
如果出于灾难恢复、合规性或业务连续性规划的目的,必须维护数英里以外的文件系统副本,EFS 复制可以帮助您满足这些需求。对于需要跨区域进行低网络延迟访问的应用程序,Amazon EFS 复制在您选择的区域中提供只读副本。借助 Amazon EFS 复制,您可以优化成本并节省高达 75% 的灾难恢复存储成本。为目标文件系统使用 EFS One Zone 存储类和 7 天过期生命周期管理策略以降低成本。不需要为数据复制构建和维护自定义流程。EFS 复制还简化了使用 Amazon CloudWatch 监控 RPO 状态并发出警报的过程。
问:我的复制文件系统是否具有时间点一致性?
否。EFS 复制不提供时间点一致复制。EFS 复制会在 Amazon CloudWatch 上发布称为 TimeSinceLastSync 的时间戳指标。至少在发布时间之前对源文件系统所做的所有更改都将被复制到目标。在记录时间之后对您的源文件系统进行的更改可能不会被复制。您可以使用 Amazon CloudWatch 监控您的 EFS 复制的运行状况。如果由于灾难恢复事件而中断复制流程,源文件系统中的文件可能已经传输但尚未复制到它们的最终位置。这些文件及其内容可以在目标文件系统的根目录下的由 EFS 复制创建的“丢失+已找到”目录中找到。
问:如何在启用复制和删除复制时使用我的目标文件系统?
当您的复制处于启用状态时,只有 EFS 复制可以影响您的目标文件系统。在此期间,您可以以只读模式访问副本。在发生灾难时,您可以通过从控制台删除复制配置或使用 DeleteReplicationConfiguration API 失效转移到目标文件系统。当您删除复制时,Amazon EFS 将停止复制其他更改,并使目标文件系统可写。然后,您可以将您的应用程序指向您的目标文件系统以继续您的操作。您可以使用 Amazon EFS 控制台或 DescribeReplicationConfigurations API 调用在您进行失效转移后检查您的目标文件系统状态。
问:我是否可以使用 EFS 复制将我的文件系统复制到多个 AWS 区域或第二个区域中的多个文件系统?
否。EFS 复制支持两个文件系统之间的复制。
问:我是否可以跨 AWS 账户复制 Amazon EFS 文件系统?
否。Amazon EFS 不支持将文件系统复制到不同的 AWS 账户。
问:EFS 复制是否会消耗我的文件系统突增积分、IOPS 限制和吞吐量限制?
否。EFS 复制活动不会消耗突增积分或计入复制对中任何一个文件系统的文件系统 IOPS 和吞吐量限制。
问:我是否能够期望目标文件系统在激活 EFS 复制后立即可用?
是的。当您第一次激活 EFS 复制时,您的副本文件系统将以只读模式创建,并且您的整个源文件系统将被复制到您选择的目标。完成此操作的时间取决于您的源文件系统的大小。虽然您可以随时失效转移到目标文件系统,但建议您等到复制完成,以最大限度减少数据丢失。您可以从 Amazon EFS 控制台监控复制的进度,控制台会指示源文件系统和目标文件系统最后一次同步的时间。
安全性
访问控制
问:如何控制哪些 Amazon EC2 实例可以访问我的文件系统?
您可以使用 VPC 安全组规则和 IAM 策略来控制哪些 EC2 实例可以访问您的文件系统。使用 VPC 安全组来控制进出文件系统的网络流量。将 IAM 策略附加到文件系统,以控制哪些客户端可以挂载文件系统,以及具有哪些权限,并使用 EFS 接入点来管理应用程序访问。通过设置符合 POSIX 标准的用户和用户组权限来控制对文件和目录的访问。
问: 如何使用 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,您只需按每月的实际用量付费。
采用预置吞吐量模式时,您需要按每月预置的吞吐量付费。没有最低消费和设置费用。
Amazon EFS 不频繁访问存储的定价基于使用的存储量和访问的数据量。在生命周期管理将您的文件完全移动到 EFS 不频繁访问存储类(EFS 标准 – IA 或 EFS 单区 – IA)之前,文件将存储在 EFS 标准或 EFS 单区上,并按标准或单区费率计费(如适用)。
有关 EFS 定价的更多信息,请访问 Amazon EFS 定价页面。
问:价格是否含税?
除非另行说明,否则我们的价格不包含适用的税费和关税(包括增值税和适用的销售税)。使用日本账单地址的客户若要使用 AWS,则需缴纳日本消费税。了解更多。
从 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?
是的。您可以通过在函数设置中引用 EFS 文件系统来从 Lambda 中运行的函数中访问 EFS。入门说明可参见 Lambda 文档。
问:我能否从 Amazon SageMaker 访问 Amazon EFS?
是的。您可以通过在 CreateTrainingJob 请求中引用 EFS 文件系统来从 Amazon SageMaker 训练任务中访问 EFS 中的训练数据。EFS 还可自动用于 SageMaker Studio 创建的主目录。
了解 Amazon EFS 定价