為現有複寫規則建立批次複寫任務 - Amazon Simple Storage Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

為現有複寫規則建立批次複寫任務

在 Amazon S3 中,即時複寫不會複寫在您建立複寫組態之前已存在於來源儲存貯體中的任何物件。即時複寫只會在建立複寫組態後,自動複寫寫入儲存貯體的新物件和更新物件。若要複寫現有的物件,您可以使用 S3 批次複寫來隨需複寫這些物件。

您可以使用 AWS SDKs、 AWS Command Line Interface (AWS CLI) 或 Amazon S3 主控台,為現有的複寫組態設定 S3 批次複寫。 Amazon S3 如需批次複寫的概觀,請參閱 使用批次複寫複寫複寫現有物件

當批次複寫任務完成時,您將收到一份完成報告。如需使用報告檢查任務的詳細資訊,請參閱追蹤任務狀態和完成報告

必要條件

在建立批次複寫任務之前,您必須建立批次操作 AWS Identity and Access Management (IAM) 角色,以授予 Amazon S3 代表您執行動作的許可。如需詳細資訊,請參閱「設定 S3 批次複寫的 IAM 角色」。

  1. 登入 AWS Management Console 並在 Word 開啟 Amazon S3 主控台。 https://console.aws.amazon.com/s3/

  2. 在左側導覽窗格中,選擇 Batch Operations (批次操作)。

  3. 選擇建立作業

  4. 確認 AWS 區域區段顯示您要建立任務的區域。

  5. 清單區段中,指定您要使用的資訊清單格式。資訊清單是您希望對其執行指定動作之所有物件的清單。若要進一步了解批次操作資訊清單,請參閱指定資訊清單

    • 如果您準備好清單,請選擇 S3 庫存報告 (manifest.json)CSV。如果您的資訊清單位於版本控制的儲存貯體中,您可以指定資訊清單的版本 ID。如果您未指定版本 ID,批次操作會使用目前版本的清單。如需建立資訊清單的詳細資訊,請參閱 指定資訊清單

      注意

      如果您資訊清單中的物件位於版本控制的儲存貯體中,您必須指定物件的 IDs 版本。如需詳細資訊,請參閱指定資訊清單

    • 若要根據複寫組態建立資訊清單,請選擇 Create manifest using S3 Replication configuration (使用 S3 複寫組態建立資訊清單)。然後選擇複寫組態的來源儲存貯體。

  6. (選用) 如果您選擇使用 S3 複寫組態建立資訊清單,則可以包含其他篩選條件,例如物件建立日期和複寫狀態。如需如何依複寫狀態篩選的範例,請參閱 指定批次複寫任務的資訊清單

  7. (選用) 如果您選擇使用 S3 複寫組態建立資訊清單,則可以儲存產生的資訊清單。若要儲存此資訊清單,請選取儲存批次操作資訊清單。然後指定資訊清單的目的地儲存貯體,然後選擇是否要加密資訊清單。

    注意

    產生的資訊清單必須存放在 AWS 區域 與來源儲存貯體相同的 中。

  8. 選擇 Next (下一步)

  9. 操作頁面上,選擇複寫,然後選擇下一步

  10. (選用) 提供 Description (描述)。

  11. 視需要調整任務的 Priority (優先順序)。數字愈大表示優先順序愈高。Amazon S3 會嘗試在優先順序較低的任務之前,先執行優先順序較高的任務。如需任務優先順序的詳細資訊,請參閱 指派任務優先順序

  12. (選用) 產生完成報告。若要產生此報告,請選取產生完成報告

    如果選擇產生完成報告,則必須選擇報告 Failed tasks only (僅限失敗的任務) 或者 All tasks (所有任務),並為報告提供目的地儲存貯體。

  13. 許可區段中,請確定您選擇的 IAM 角色具有批次複寫所需的許可。複寫失敗的最常見原因之一是提供的 IAM 角色中的許可不足。如需建立此角色的詳細資訊,請參閱設定 S3 批次複寫的 IAM 角色

  14. (選用) 將任務標籤新增到批次複寫任務。

  15. 選擇 Next (下一步)

  16. 檢閱您的任務組態,然後選擇建立任務

下列範例create-job命令會使用 的 AWS 帳戶 S3 產生的資訊清單來建立 S3 批次複寫任務111122223333。此範例會複寫現有的物件和先前無法複寫的物件。如需依複寫狀態篩選的資訊,請參閱 指定批次複寫任務的資訊清單

若要使用此命令,請取代 使用者輸入預留位置 使用您自己的資訊。將 IAM 角色取代role/batch-Replication-IAM-policy為您先前建立的 IAM 角色。如需詳細資訊,請參閱設定 S3 批次複寫的 IAM 角色

aws s3control create-job --account-id 111122223333 \ --operation '{"S3ReplicateObject":{}}' \ --report '{"Bucket":"arn:aws:s3:::amzn-s3-demo-completion-report-bucket",\ "Prefix":"batch-replication-report", \ "Format":"Report_CSV_20180820","Enabled":true,"ReportScope":"AllTasks"}' \ --manifest-generator '{"S3JobManifestGenerator": {"ExpectedBucketOwner": "111122223333", \ "SourceBucket": "arn:aws:s3:::amzn-s3-demo-source-bucket", \ "EnableManifestOutput": false, "Filter": {"EligibleForReplication": true, \ "ObjectReplicationStatuses": ["NONE","FAILED"]}}}' \ --priority 1 \ --role-arn arn:aws:iam::111122223333:role/batch-Replication-IAM-policy \ --no-confirmation-required \ --region source-bucket-region
注意

您必須從與複寫來源儲存貯體 AWS 區域 相同的 啟動任務。

成功啟動批次複寫任務後,您將收到任務 ID 做為回應。您可以使用下列describe-job命令來監控此任務。若要使用此命令,請取代 使用者輸入預留位置 使用您自己的資訊。

aws s3control describe-job --account-id 111122223333 --job-id job-id --region source-bucket-region

下列範例使用 的使用者定義清單 AWS 帳戶 建立 S3 批次複寫任務111122223333。如果資訊清單中的物件位於版本控制的儲存貯體中,您必須指定物件的 IDs 版本。只有在清單檔案中指定版本 ID 的物件,才會被複寫。如需建立資訊清單的詳細資訊,請參閱 指定資訊清單

若要使用此命令,請取代 使用者輸入預留位置 使用您自己的資訊。將 IAM 角色取代role/batch-Replication-IAM-policy為您先前建立的 IAM 角色。如需詳細資訊,請參閱設定 S3 批次複寫的 IAM 角色

aws s3control create-job --account-id 111122223333 \ --operation '{"S3ReplicateObject":{}}' \ --report '{"Bucket":"arn:aws:s3:::amzn-s3-demo-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:::amzn-s3-demo-manifest-bucket/manifest.csv",\ "ETag":"Manifest Etag"}}' \ --priority 1 \ --role-arn arn:aws:iam::111122223333:role/batch-Replication-IAM-policy \ --no-confirmation-required \ --region source-bucket-region
注意

您必須從與複寫來源儲存貯體 AWS 區域 相同的 啟動任務。

成功啟動批次複寫任務後,您將收到任務 ID 做為回應。您可以使用下列describe-job命令來監控此任務。

aws s3control describe-job --account-id 111122223333 --job-id job-id --region source-bucket-region