メニュー
Amazon Simple Storage Service
開発者ガイド (API Version 2006-03-01)

クロスリージョンレプリケーション (CRR)

クロスリージョンレプリケーションはバケットレベルの設定を持ち、異なる AWS リージョンにあるバケット間でオブジェクトを自動的に非同期コピーします。これら 2 つのバケットをソースバケットおよび送信先バケットと呼びます。これらのバケットは異なる AWS アカウントで所有できます。

この機能を有効にするには、レプリケート元バケットにレプリケーション設定を追加して、その設定に従ってオブジェクトをレプリケートするよう Amazon S3 に指示します。レプリケーション設定で、次のような情報を指定します。

  • Amazon S3 にオブジェクトをレプリケートするレプリケート先バケット。

     

  • レプリケートするオブジェクト。設定でキー名プレフィックスを指定することで、Amazon S3 がオブジェクトすべて、またはサブセットをレプリケートするようリクエストすることができます。たとえば、キー名のプレフィックスが Tax/ であるオブジェクトのみをレプリケートするようにクロスリージョンレプリケーションを設定できます。 これより、Amazon S3 は Tax/doc1Tax/doc2 のようなキーを持つオブジェクトをレプリケートしますが、Legal/doc3 のようなキーを持つオブジェクトはレプリケートしません。

     

  • デフォルトでは、Amazon S3 はコピー元オブジェクトのストレージクラスを使用してオブジェクトレプリカを作成します。オプションで、レプリケート先バケットにあるオブジェクトのレプリカに使用するためのストレージクラスを指定できます。

指定可能な追加のオプション設定があります。詳細については、「追加のクロスリージョンレプリケーション設定」を参照してください。

レプリケーション設定で特定のリクエストを行う場合を除き、レプリケート先バケットにあるオブジェクトのレプリカは、レプリケート元バケットにあるオブジェクトの正確なレプリカです。(例:

  • レプリカはキー名が同じで、メタデータ (作成時刻、ユーザー定義メタデータ、およびバージョン ID など) も同じです。

     

  • レプリケーション設定で別のストレージクラスを明示的に指定しない限り、Amazon S3 はソースオブジェクトと同じストレージクラスを使用してレプリカを保存します。

     

  • Amazon S3 が最初にオブジェクトをレプリケートする際、オブジェクトのレプリカが引き続きソースオブジェクト所有者によって所有されているなら、対応するアクセスコントロールリスト (ACL) も一緒にレプリケートされます。

Amazon S3 は、Secure Sockets Layer (SSL) を使用して AWS リージョンにわたり、伝送中のすべてのデータを暗号化します。

レプリケート元バケットのオブジェクトをレプリケートできるのは、1 つのレプリケート先バケットに対してのみです。Amazon S3 があるオブジェクトをレプリケートした後、そのオブジェクトを再度レプリケートすることはできません。たとえば、既存のレプリケーション設定でレプリケート先バケットを変更しても、Amazon S3 が再度レプリケートすることはありません。

ユースケースのシナリオ

バケットにクロスリージョンレプリケーションを設定するのに、次のようなさまざまな理由が考えられます。

  • コンプライアンス要件 – Amazon S3 は、デフォルトで、複数の地理的に離れたアベイラビリティーゾーンにデータを保存しますが、コンプライアンス要件によっては、さらに離れた場所にデータを保存しなければならない場合があります。クロスリージョンレプリケーションでは、離れた AWS リージョン間でデータをレプリケートしてこのコンプライアンス要件を満たすことができます。

     

  • レイテンシーの最小化 – 顧客が 2 つの地域にいるとします。その場合、オブジェクトにアクセスする際のレイテンシーを最小にするために、地理的にユーザーのより近くにある AWS リージョンにオブジェクトのコピーを保持できます。

     

  • 運用上の理由 – コンピューティングクラスターが 2 つの異なる AWS リージョンに存在していて、同じオブジェクトセットを分析しています。この場合、2 つのリージョンにオブジェクトのコピーを保持することができます。

     

  • 異なる所有者のもとでオブジェクトのコピーを保持する – レプリケート元バケットまたはソースオブジェクトの所有者に関係なく、レプリカの所有権をレプリケート先バケットを所有する AWS アカウントに変更するように Amazon S3 に指示できます。オブジェクトのレプリカへのアクセスを制限するために、これを選択することができます。これは、レプリケーション設定の所有者オーバーライドオプションとも呼ばれます。

要件

クロスリージョンレプリケーションの要件は以下のとおりです。

  • レプリケート元とレプリケート先のバケットでは、バージョニングを有効にする必要があります。バージョニングの詳細については、「バージョニングの使用」を参照してください。

     

  • レプリケート元とレプリケート先のバケットは、異なる AWS リージョンに存在する必要があります。バケットを作成できる AWS リージョンのリストについては、「AWS General Reference」の「リージョンとエンドポイント」を参照してください。

     

  • Amazon S3 に、ユーザーに代わってレプリケート元バケットのオブジェクトをレプリケート先バケットにレプリケートするアクセス権限が必要です。

     

    このアクセス権限は、IAM ロールを作成することによって付与できます。 IAM ロールの詳細については、「IAM ロールを作成します。」を参照してください。

     

  • レプリケート元バケットの所有者がオブジェクトも所有している場合、バケット所有者はオブジェクトをレプリケートする完全なアクセス権限を持ちます。 そうでない場合、オブジェクト所有者はオブジェクト ACL を通じてバケット所有者に READ および READ_ACP アクセス権限を付与する必要があります。Amazon S3 アクションの詳細については、「ポリシーでのアクセス許可の指定」を参照してください。 リソースと所有権についての詳細は、「Amazon S3 リソース」を参照してください。

異なる AWS アカウントがレプリケート元バケットとレプリケート先バケットを所有しているクロスアカウントのシナリオでレプリケーション設定を設定している場合は、次の追加の要件が適用されます。

レプリケートするものと、しないもの

クロスリージョン レプリケーションのセットアップ

クロスリージョンレプリケーションのステータスの検索

クロスリージョンレプリケーション: その他の考慮事項

チュートリアル 1: レプリケート元とレプリケート先のバケットが同一の AWS アカウントによって所有されているクロスリージョンレプリケーションの設定

チュートリアル 2: レプリケート元とレプリケート先のバケットが異なる AWS アカウントによって所有されているクロスリージョンレプリケーションの設定