本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
設定即時複寫的範例
下列範例提供逐步演練,顯示如何設定常用案例的即時複寫。
注意
即時複寫是指相同區域複寫 (SRR) 和跨區域複寫 (CRR)。在您設定複寫之前,即時複寫不會複寫儲存貯體中存在的任何物件。若要複寫在設定複寫之前已存在的物件,請使用隨需複寫。若要同步儲存貯體並隨需複寫現有物件,請參閱複寫現有物件。
這些範例示範如何使用 Amazon S3 主控台、 AWS Command Line Interface (AWS CLI) 和 AWS SDKs(顯示適用於 Java 的 AWS SDK 和 適用於 .NET 的 AWS SDK 範例) 建立複寫組態。
如需安裝和設定 的相關資訊 AWS CLI,請參閱AWS Command Line Interface 《 使用者指南》中的下列主題:
-
設定 AWS CLI- 您必須設定至少一個設定檔。如果您要探索跨帳戶案例,請設定兩個描述檔。
如需 AWS SDKs的相關資訊,請參閱 適用於 Java 的 AWS SDK
提示
如需示範如何使用即時複寫來複寫資料的step-by-step教學課程,請參閱教學課程: AWS 區域 在使用 S3 複寫內和之間複寫資料
複寫註釋
當您在儲存貯體上設定複寫時,Amazon S3 會自動複寫註釋,做為即時複寫的一部分。每個註釋會在變更發生時獨立複寫。若要複寫註釋,複寫 IAM 角色必須包含來源儲存貯體的 s3:GetObjectVersionAnnotationForReplication 許可。
下列範例顯示 IAM 角色許可政策中的來源儲存貯體陳述式,其中包含註釋複寫許可:
{ "Effect": "Allow", "Action": [ "s3:GetObjectVersionForReplication", "s3:GetObjectVersionAcl", "s3:GetObjectVersionTagging", "s3:GetObjectVersionAnnotationForReplication" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-source-bucket/*" ] }
註釋複寫不需要額外的目的地儲存貯體許可。目的地儲存貯體的s3:ReplicateObject許可涵蓋註釋複寫。
請注意下列註釋複寫行為:
-
來源上的註釋新增和更新會複寫到目的地。每個註釋會在變更發生時獨立複寫。
-
來源上的註釋刪除不會複寫到目的地。如果您刪除來源上的註釋,註釋會保留在目的地上。
-
如果您在來源上重複刪除並重新建立具有不同名稱的註釋,註釋會隨著時間累積在目的地上,因為不會複寫刪除。
如果您不希望註釋複寫到目的地儲存貯體,目的地儲存貯體擁有者可以將s3:ReplicateObjectAnnotation動作的拒絕陳述式新增至目的地儲存貯體政策。物件複寫會繼續成功;只會封鎖註釋複寫。下列範例顯示拒絕陳述式:
... "Statement":[ { "Effect":"Deny", "Principal":{ "AWS":"arn:aws:iam::source-bucket-account-id:role/service-role/source-account-IAM-role" }, "Action":"s3:ReplicateObjectAnnotation", "Resource":"arn:aws:s3:::amzn-s3-demo-destination-bucket/*" } ] ...
如需註釋複寫行為的詳細資訊,請參閱 Amazon S3 複寫的內容?。如需許可設定指示,請參閱 設定即時複寫的許可。