动手实验 | 将 Amazon S3 存储桶复制到其它区域


  实验环境

1. AWS 账户权限
确保 IAM 用户拥有以下权限:
s3:PutBucketReplication(配置复制规则)
s3:ListBucket、s3:GetObject(源存储桶访问)
s3:PutObject、s3:ReplicateObject(目标存储桶写入)
2. 存储桶配置
源存储桶和目标存储桶必须位于不同区域(如 us-east-1 和 eu-west-1)。
目标存储桶需提前创建(名称可与源存储桶不同)。
3. 版本控制
启用源存储桶的版本控制(S3 CRR 要求源存储桶必须开启版本控制,目标存储桶可选择性开启)。
4. 说明
跨区域复制(Cross-Region Replication, CRR)是 Amazon S3 提供的核心功能,用于在两个不同 AWS 区域间自动同步对象,适用于数据灾备、合规性要求或降低延迟访问等场景。

  作业步骤

本次采用AWS Console界面完成作业。
注意:根据项目的具体情况,可以采用不同的实施方法。比如使用命令行(CLI)部署、代码部署 (CloudFomation、Terraform等)、以及其它开发语言(SDK)完成作业。

步骤一:启用源和存储桶版本控制
登录 AWS S3 控制台,选择源存储桶(source-bucket-us-east-1)。
进入 Properties 选项卡,找到 Versioning,点击 Enable versioning。

步骤二:启用目标存储桶版本控制
方法同上

步骤三:配置复制规则
在源存储桶的 Management 选项卡下,点击 Create replication rule。
Rule name:crr-to-eu-west-1
Source bucket:选择当前存储桶(source-bucket-us-east-1)。
Destination:
Bucket:选择目标存储桶(target-bucket-eu-west-1)。
IAM role:选择现有角色或创建新角色(需赋予 s3:GetObject、s3:ReplicateObject 等权限)。
Objects to replicate:
选择 All objects 或通过前缀过滤(如 logs/)。
Storage class:选择目标存储桶的存储类型(如 Standard)。
Replication time control (RTC):可选,启用后 S3 承诺在 15 分钟内完成复制(适合关键数据)。

步骤四:完成配置复制规则
点击 Create rule 完成配置。

  结果验证

1. 查看复制任务:
在源存储桶的 Replication 选项卡下,查看规则状态(Enabled)及复制进度。
2. 检查目标存储桶:
登录目标存储桶控制台,确认对象已同步(包括版本 ID 和元数据)。
3. 测试覆盖/删除场景:
在源存储桶上传新对象或删除对象,观察目标存储桶是否同步更新(需注意删除标记也会被复制)。