为现有复制规则创建分批复制任务
您可以通过使用 AWS SDK、AWS Command Line Interface(AWS CLI)或 Amazon S3 控制台为现有复制配置来配置 S3 分批复制。有关分批复制的概述,请参阅 使用 S3 分批复制以复制现有对象。
作为先决条件,您必须创建批量操作 AWS Identity and Access Management(IAM)角色,以向 Amazon S3 授予代表您执行操作的权限,请参阅 配置 IAM 策略以进行分批复制。
分批复制任务完成后,您将收到完成报告。有关如何使用报告检查任务的更多信息,请参阅 跟踪任务状态和完成报告。
登录到 AWS Management Console,然后通过以下网址打开 Amazon S3 控制台:https://console.aws.amazon.com/s3/
。 -
在 Amazon S3 控制台的导航窗格中选择 Batch Operations(批量操作)。
-
请选择 Create job (创建任务)。
-
请选择要在其中创建任务的区域。
-
请选择 Manifest format(清单格式)。此示例将展示如何基于现有 S3 复制配置创建清单。
-
要根据复制配置创建清单,请选择 Create manifest using S3 Replication configuration(使用 S3 复制配置创建清单)。然后,选择您的复制配置的源存储桶。
-
(可选)您可以包括其他筛选条件,例如对象创建日期和复制状态。有关如何按复制状态筛选的示例,请参阅 为分批复制任务指定清单。
-
要保存清单,请选择 Save Batch Operations manifest(保存批量操作清单)。
-
如果您选择生成和保存清单,则必须选择此账户中的存储桶或另一个 AWS 账户 中的存储桶。请在文本框中指定存储桶名称。
注意
生成的清单必须存储在与源存储桶相同的 AWS 区域 中。
-
请选择加密类型。
-
-
(可选)提供 Description(说明)。
-
必要时调整任务的 Priority(优先级)。数字越大,优先级越高。Amazon S3 尝试在优先级较低的任务之前运行优先级较高的任务。有关任务优先级的更多信息,请参阅 分配任务优先级。
-
(可选)生成完成报告。要生成报告,请选择 Generate completion report(生成完成报告)。
如果您选择生成完成报告,则必须选择报告仅失败的任务或全部任务,并为报告提供目标存储桶。
-
选择有效的 IAM 角色。
注意
有关创建 IAM 角色的更多信息,请参阅 配置 IAM 策略以进行分批复制。
-
(可选)将任务标签添加到分批复制任务中。
-
请选择 Next (下一步)。
-
检查您的任务配置,然后选择 Create job(创建任务)。
以下示例使用 S3 为 AWS 账户
生成的清单创建 S3 分批复制任务。此示例将尝试复制现有对象和之前未能复制的对象。有关按复制状态筛选的信息,请参阅 为分批复制任务指定清单。111122223333
aws s3control create-job --account-id
111122223333
--operation '{"S3ReplicateObject":{}}' --report '{"Bucket":"arn:aws:s3:::*** completion report bucket ****
","Prefix":"batch-replication-report
", "Format":"Report_CSV_20180820","Enabled":true,"ReportScope":"AllTasks"}' --manifest-generator '{"S3JobManifestGenerator": {"ExpectedBucketOwner": "111122223333
", "SourceBucket": "arn:aws:s3:::*** replication source bucket ***
", "EnableManifestOutput": false, "Filter": {"EligibleForReplication": true, "ObjectReplicationStatuses": ["NONE
","FAILED
"]}}}' --priority1
--role-arn arn:aws:iam::111122223333
:role/batch-Replication-IAM-policy
--no-confirmation-required --regionsource-bucket-region
注意
该任务必须从同一个 AWS 区域 复制源存储桶中启动。IAM 角色 role/
之前已创建。请参阅 配置 IAM 策略以进行分批复制。batch-Replication-IAM-policy
成功启动分批复制任务后,您会收到任务 ID 作为响应。您可以使用下面的命令监控此任务。
aws s3control describe-job --account-id
111122223333
--job-idjob-id
--regionsource-bucket-region
以下示例使用 AWS 账户
的用户定义清单创建 S3 分批复制任务。如果清单中的对象位于受版本控制的存储桶中,则必须指定对象的版本 ID。只有在清单中指定了版本 ID 的对象才会复制。有关创建清单的更多信息,请参阅 指定清单。111122223333
aws s3control create-job --account-id
111122223333
--operation '{"S3ReplicateObject":{}}' --report '{"Bucket":"arn:aws:s3:::*** completion report bucket ****
","Prefix":"batch-replication-report
", "Format":"Report_CSV_20180820","Enabled":true,"ReportScope":"AllTasks"}' --manifest '{"Spec":{"Format":"S3BatchOperations_CSV_20180820","Fields":["Bucket","Key","VersionId"]},"Location":{"ObjectArn":"arn:aws:s3:::*** completion report bucket ****/manifest.csv
","ETag":"Manifest Etag
"}}' --priority1
--role-arn arn:aws:iam::111122223333
:role/batch-Replication-IAM-policy
--no-confirmation-required --regionsource-bucket-region
注意
该任务必须从同一个 AWS 区域 复制源存储桶中启动。IAM 角色 role/
之前已创建。请参阅 配置 IAM 策略以进行分批复制。batch-Replication-IAM-policy
成功启动分批复制任务后,您会收到任务 ID 作为响应。您可以使用下面的命令监控此任务。
aws s3control describe-job --account-id
111122223333
--job-idjob-id
--regionsource-bucket-region