View a markdown version of this page

ライブレプリケーションの設定例 - Amazon Simple Storage Service

ライブレプリケーションの設定例

以下の例は、一般的なユースケース用にライブレプリケーションを設定するためのステップバイステップのチュートリアルを示しています。

注記

ライブレプリケーションとは、同一リージョンレプリケーション (SRR) およびクロスリージョンレプリケーション (CRR) を指します。ライブレプリケーションでは、レプリケーションを設定する前にバケットに存在していたオブジェクトはレプリケートされません。レプリケーションを設定する前に存在していたオブジェクトをレプリケートするには、オンデマンドレプリケーションを使用します。バケットを同期して既存のオブジェクトをオンデマンドでレプリケートするには、「既存のオブジェクトのレプリケーション」を参照してください。

これらの例は、Amazon S3 コンソール、AWS Command Line Interface (AWS CLI)、AWS SDK (AWS SDK for Java および AWS SDK for .NET の例を示します) を使用したレプリケーション設定の作成方法を示しています。

AWS CLI のインストールと設定方法の詳細については、「AWS Command Line Interface ユーザーガイド」の次のトピックを参照してください。

  • の開始方法AWS CLI

  • AWS CLI の設定 - 少なくとも 1 つのプロファイルを設定する必要があります。クロスアカウントのシナリオを学習する場合は、2 つのプロファイルを設定します。

AWS SDK の詳細については、「AWS SDK for Java」および「AWS SDK for .NET」を参照してください。

ヒント

ライブレプリケーションを使用してデータをレプリケートする方法の詳細な手順を説明するチュートリアルについては、「Amazon S3 レプリケーションを使用して、AWS リージョン 内およびリージョン間でデータをレプリケートする」を参照してください。

注釈のレプリケート

バケットでレプリケーションを設定すると、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 アクションの拒否ステートメントを追加できます。オブジェクトレプリケーションは成功し続け、注釈レプリケーションのみがブロックされます。次の例は、Deny ステートメントを示しています。

... "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 がレプリケートするもの」を参照してください。アクセス許可の設定手順については、「ライブレプリケーションのアクセス許可の設定」を参照してください。