Amazon Simple Storage Service
开发人员指南 (API 版本 2006-03-01)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

跨区域复制 (CRR)

跨区域复制是一项存储桶级别配置,该功能支持跨不同 AWS 区域中的存储桶自动异步复制对象。我们将这些存储桶分别称为 存储桶和目标 存储桶。这些存储桶可由不同的 AWS 账户拥有。

要激活此功能,您可以将一个复制配置添加到源存储桶,来指示 Amazon S3 根据此配置复制对象。在复制配置中,您需要提供如下所示的信息:

  • 您希望 Amazon S3 将对象复制到的目标存储桶。

     

  • 您要复制的对象。您可以请求 Amazon S3 复制所有对象,也可以通过在配置中提供一个键名称前缀来请求复制部分对象。例如,您可以将跨区域复制配置为仅复制具有键名称前缀 Tax/ 的对象。这会使 Amazon S3 复制具有 Tax/doc1Tax/doc2 等键的对象,但不复制具有 Legal/doc3 键的对象。

     

  • 默认情况下,Amazon S3 使用源对象的存储类来创建对象副本。您可以选择指定要用于目标存储桶中的对象副本的存储类。

有可供您指定的其他可选配置。有关更多信息,请参阅 其他跨区域复制配置

除非您在复制配置中发出特定请求,否则目标存储桶中的对象副本与源存储桶中的对象完全相同。例如:

  • 副本具有相同的键名称和元数据 (例如,创建时间、用户定义的元数据和版本 ID)。

     

  • 除非您在复制配置中明确指定其他存储类,否则 Amazon S3 将使用与源对象相同的存储类来存储对象副本。

     

  • 假定对象副本仍由源对象拥有者拥有,当 Amazon S3 最初复制对象时,它还将复制相应的对象访问控制列表 (ACL)。

Amazon S3 使用安全套接字层 (SSL) 跨 AWS 区域加密传输中的所有数据。

源存储桶中的对象只能复制到一个目标存储桶。在 Amazon S3 复制一个对象后,无法再次复制该对象。例如,您可以在现有复制配置中更改目标存储桶,但 Amazon S3 不会再次复制它。

使用案例方案

您可能基于各种原因为存储桶配置跨区域复制,其中包括:

  • 合规性要求 – 虽然 Amazon S3 默认跨多个地理位置较远的可用区存储数据,但是合规性要求所规定的数据存储距离可能更远。通过跨区域复制,可以在远距离 AWS 区域之间复制数据以满足这些合规性要求。

     

  • 最大限度减少延迟 – 客户处于两个地理位置。为了最大限度缩短访问对象时的延迟,可以在地理位置与用户接近的 AWS 区域中维护对象副本。

     

  • 操作原因 – 您在两个不同 AWS 区域中具有分析同一组对象的计算集群。您可能选择在这些区域中维护对象副本。

     

  • 在不同的所有权下维护对象副本 – 无论谁拥有此源存储桶或源对象,您都可以指示 Amazon S3 将副本的所有权更改为拥有目标存储桶的 AWS 账户。您可以选择执行此操作来要限制对对象副本的访问权。这也称作复制配置的拥有者覆盖 选项。

要求

跨区域复制的要求:

  • 源存储桶和目标存储桶必须已启用版本控制。有关版本控制的更多信息,请参阅使用版本控制

     

  • 源存储桶和目标存储桶必须处于不同的 AWS 区域。有关可以在其中创建存储桶的 AWS 区域的列表,请参阅 AWS General Reference 中的区域和终端节点

     

  • Amazon S3 必须有权代表您将对象从源存储桶复制到目标存储桶。

     

    您可以通过创建 IAM 角色授予这些权限。 有关 IAM 角色的更多信息,请参阅创建 IAM 角色

    重要

    要传递您创建的用于授予 Amazon S3 复制权限的 IAM 角色,您必须具有 iam:PassRole 权限。有关更多信息,请参阅 IAM 用户指南 中的授予向 AWS 服务传递角色的用户权限

  • 如果源存储桶拥有者也是对象的拥有者,则其拥有复制对象的完全权限。如果不是,则对象拥有者必须通过对象 ACL 向存储桶拥有者授予 READREAD_ACP 权限。有关 Amazon S3 操作的更多信息,请参阅在策略中指定权限。有关资源和所有权的更多信息,请参阅 Amazon S3 资源

如果您要在跨账户方案 (其中,源存储桶和目标存储桶由不同的 AWS 账户拥有) 中设置复制配置,则以下附加要求将适用:

复制和不复制的内容

设置跨区域复制

查看跨区域复制状态

跨区域复制:其他注意事项

演练 1:配置跨区域复制 (其中源存储桶和目标存储桶由同一 AWS 账户拥有)

演练 2:配置跨区域复制 (其中源存储桶和目标存储桶由不同 AWS 账户拥有)