配置到现有 EFS 文件系统的复制 - Amazon Elastic File System
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

配置到现有 EFS 文件系统的复制

Amazon EFS 会将源文件系统上的数据和元数据复制到您选择 Amazon Web Services 区域 的目标文件系统。在复制过程中,Amazon EFS 会识别文件系统之间的数据差异,并将差异应用于目标文件系统。

要复制到现有文件系统,请执行以下步骤。

注意

一个文件系统只能属于一个复制配置。不能在其他复制配置中将目标文件系统用作源文件系统。

步骤 1:禁用文件系统的复制覆盖保护功能

创建 Amazon EFS 文件系统时,将默认启用其复制覆盖保护功能。复制覆盖保护功能可防止在复制配置中将文件系统用作目标。在复制配置中使用文件系统作为目标之前,必须先禁用保护功能。如果您删除复制配置,则文件系统的复制覆盖保护功能将重新启用,文件系统将变为可写状态。

Amazon EFS 文件系统的复制覆盖保护功能的状态可以具有下表中描述的值之一。

文件系统状态 描述
已启用 文件系统不能用作复制配置中的目标文件系统。文件系统是可写的。默认情况下,复制覆盖保护功能处于 ENABLED 状态。
DISABLED 文件系统可以用作复制配置中的目标文件系统。
复制 文件系统正用作复制配置中的目标文件系统。文件系统是只读的,只有 Amazon EFS 在复制期间才能对其进行修改。

所需的权限

禁用复制覆盖保护功能需要 elasticfilesystem:UpdateFileSystemProtection 操作的权限。有关更多信息,请参阅 Amazon 托管策略: AmazonElasticFileSystemFullAccess

  1. 登录 Amazon Web Services Management Console 并打开 Amazon EFS 控制台,网址为 https://console.aws.amazon.com/efs/

  2. 在左侧导航窗格中,选择文件系统

  3. 文件系统列表中,选择要在复制配置中用作目标文件系统的 Amazon EFS 文件系统。

  4. 文件系统保护部分中,关闭复制覆盖保护

在以下示例中,update-file-system-protectionCLI 命令禁用指定文件系统的复制覆盖保护。等效的 API 命令是 UpdateFileSystemProtection

aws efs update-file-system-protection --file-system-id fs-0a8b2be428114d97c --replication-overwrite-protection DISABLED

Amazon CLI 答案如下。

{ "ReplicationOverwriteProtection": "DISABLED" }

步骤 2:创建复制配置

在目标文件系统上禁用复制覆盖保护后,可以创建复制配置。复制到现有文件系统时,目标文件系统可以与源文件系统使用相同的帐户或不同的帐户。

如果源文件系统已加密,也必须对目标文件系统进行加密。此外,如果源文件未加密而目标文件系统已加密,则在执行失效转移后无法失效自动恢复到源目标。有关加密的更多信息,请参阅在 Amazon EFS 中加密数据

注意

当您最初配置复制到现有文件系统时,Amazon EFS 会将数据写入目标文件系统或从目标文件系统中删除现有数据,以匹配源文件系统中的数据。如果您不想更改目标文件系统中的数据,则应改为复制到新的文件系统。有关更多信息,请参阅 配置到新 EFS 文件系统的复制

先决条件

拥有要使用的目标文件系统 ID(用于同账户复制)或目标文件系统 ARN(用于跨账户复制)的副本。

如果目标文件系统与源文件系统 Amazon Web Services 账户 不同,请创建一个 IAM 角色以允许 Amazon EFS 执行复制并为文件系统分配资源策略。有关更多信息,请参阅 跨 Amazon 账户复制 EFS 文件系统

  1. 登录 Amazon Web Services Management Console 并打开 Amazon EFS 控制台,网址为 https://console.aws.amazon.com/efs/

  2. 打开要复制的文件系统:

    1. 在左侧导航窗格中,选择文件系统

    2. 文件系统列表中,选择要复制的 Amazon EFS 文件系统。选择的文件系统不能是现有复制配置中的源文件系统或目标文件系统。

  3. 选择复制选项卡。

  4. 复制部分,选择创建复制

  5. 对于复制配置,请选择现有文件系统。

  6. 选择目标文件系统。

    • 要复制到与源文件系统 Amazon Web Services 账户 相同的文件系统,请执行以下操作:

      1. 选择 “选择此帐户中的文件系统”,然后在 “目标” 中 Amazon Web Services 区域,选择 Amazon Web Services 区域 要将文件系统复制到哪个。

      2. 选择浏览 EFS,然后选择文件系统。目标文件系统的路径显示在目标框中。

    • 要复制到与源文件系统 Amazon Web Services 账户 不同的文件系统,请执行以下操作:

      1. 选择 “在其他帐户中指定文件系统”

      2. 目标文件系统 ARN 中,输入目标文件系统的亚马逊资源名称 (ARN)。

    注意

    如果文件系统上启用了复制覆盖保护功能,则会显示一条警告。选择禁用保护,在新选项卡中打开文件系统并关闭其复制覆盖保护功能。禁用保护功能后,请返回创建复制选项卡,并单击刷新按钮以清除消息。

  7. 对于 IAM 角色,请输入允许 Amazon EFS 复制到目标文件系统的 IAM 角色的 ARN。对于同账户复制,这是可选的,但对于跨账户复制则是必需的。有关更多信息,请参阅 跨 Amazon 账户复制 EFS 文件系统

  8. 选择创建复制,在确认消息输入框中键入 confirm,然后选择创建复制复制部分将显示复制详细信息。

本节提供了在 Amazon CLI 中使用 create-replication-configuration 命令创建复制配置的示例。等效的 API 命令是 CreateReplicationConfiguration

例 : 为另一个区域中的现有目标文件系统创建复制配置

以下示例创建了一个复制配置,其中文件系统 ID fs-0123456789abcdef1 被复制到fs-0a8b2be428114d97c中的文件系统 ID eu-west-2 Amazon Web Services 区域。

aws efs create-replication-configuration \ --source-file-system-id fs-0123456789abcdef1 \ --destinations "[{\"Region\":\"eu-west-2\",\"FileSystemId\":\"fs-0a8b2be428114d97c\"}]"

Amazon CLI 答案如下:

{ "SourceFileSystemId": "fs-0123456789abcdef1", "SourceFileSystemRegion": "us-east-1", "SourceFileSystemArn": "arn:aws:elasticfilesystem:us-east-1:111122223333:file-system/fs-0123456789abcdef1", "OriginalSourceFileSystemArn": "arn:aws:elasticfilesystem:us-east-1:111122223333:file-system/fs-0123456789abcdef1", "CreationTime": "2024-10-20T20:40:13+00:00", "Destinations": [ { "Status": "ENABLING", "FileSystemId": "fs-0a8b2be428114d97c", "Region": "eu-west-2", "OwnerId": "123456789012, } ], "SourceFileSystemOwnerId": "123456789012" }
例 : 创建跨账户复制配置

以下示例创建了一个复制配置,其中源文件系统和目标文件系统位于不同的位置 Amazon Web Services 账户。账户fs-0123456789abcdef1中的源文件系统 ID 将复制到账户555666777888fs-0a8b2be428114d97c中的文件系统 ID 123456789012。该示例指定了目标文件系统的亚马逊资源名称 (ARN) 和源账户中允许 Amazon EFS 代表其执行复制的 IAM 角色的 ARN。由于未指定 KMS 密钥,因此使用账户的默认 Amazon KMS 服务密钥 (aws/elasticfilesystem) 对目标文件系统进行加密。

aws efs --region $REGION --endpoint $ENDPOINT create-replication-configuration --source-file-system-id fs-0123456789abcdef1 --destinations Region=eu-west-2,FileSystemId=arn:aws:elasticfilesystem:eu-west-2:123456789012:file-system/fs-0a8b2be428114d97c,RoleArn=arn:aws:iam::555666777888:role/cross-account-replication

Amazon CLI 答案如下:

{ "SourceFileSystemId": "fs-0123456789abcdef1", "SourceFileSystemRegion": "us-east-1", "SourceFileSystemArn": "arn:aws:elasticfilesystem:us-east-1:555666777888:file-system/fs-0123456789abcdef1", "OriginalSourceFileSystemArn": "arn:aws:elasticfilesystem:us-east-1:555666777888:file-system/fs-0123456789abcdef1", "CreationTime": "2024-10-20T20:40:13+00:00", "Destinations": [ { "Status": "ENABLING", "FileSystemId": "fs-0a8b2be428114d97c", "Region": "eu-west-2", "OwnerId": "123456789012, "RoleArn": "arn:aws:iam::555666777888:role/cross-account-replication" } ], "SourceFileSystemOwnerId": "555666777888" }