マルチリージョンアクセスポイントで使用するためのレプリケーションの設定 - Amazon Simple Storage Service

マルチリージョンアクセスポイントで使用するためのレプリケーションの設定

マルチリージョンアクセスポイントエンドポイントに対してリクエストを行うと、Amazon S3 は、最も近接したバケットにリクエストを自動的にルーティングします。この決定を行う際には、Amazon S3 ではリクエストの内容は考慮されません。オブジェクトの GET へのリクエストを行う場合、リクエストが、このオブジェクトのコピーを持たないバケットにルーティングされる可能性もあります。その場合は、HTTP ステータスコード 404 (見つかりません) エラーが表示されます。マルチリージョンアクセスポイントのリクエストルーティングの詳細については、「マルチリージョンアクセスポイントリクエストのルーティング」を参照してください。

リクエストを受け取るバケットに関係なく、マルチリージョンアクセスポイントでオブジェクトを取得できるようにするには、Amazon S3 クロスリージョンレプリケーションを設定する必要があります。

例えば、3 つのバケットを持つマルチリージョンアクセスポイントについて考えてみましょう。

  • オブジェクト my-image.jpg を含む、リージョン us-west-2my-bucket-usw2 という名前のバケット

  • オブジェクト my-image.jpg を含む、リージョン ap-south-1my-bucket-aps1 という名前のバケット

  • オブジェクトmy-image.jpg を含まないリージョン eu-central-1my-bucket-euc1 という名前のバケット

このような状況では、オブジェクト my-image.jpg に対して GetObject リクエストを行った場合、そのリクエストの成功は、どのバケットがリクエストを受け取ったかによって異なります。Amazon S3 はリクエストの内容を考慮しないため、バケットが最も近接していると応答する場合、GetObject リクエストを my-bucket-euc1 バケットにルーティングします。オブジェクトがマルチリージョンアクセスポイントのバケット内にある場合でも、リクエストを受け取った個々のバケットにオブジェクトが含まれていないため、404 Not Found エラーが発生します。

クロスリージョンレプリケーション (CRR) を有効にすると、この結果を回避できます。適切なレプリケーションルールを使用すると、my-image.jpg オブジェクトは my-bucket-euc1 バケットにコピーされます。そのため、Amazon S3 がリクエストをそのバケットにルーティングすれば、オブジェクトを取得できるようになります。

レプリケーションは、マルチリージョンアクセスポイントに割り当てられているバケットでは通常どおりに機能します。Amazon S3 は、マルチリージョンアクセスポイントにあるバケットに対して特別なレプリケーション処理を実行しません。バケットでレプリケーションを設定する方法については、「ライブレプリケーションの設定の概要」を参照してください。

マルチリージョンアクセスポイントでのレプリケーションの使用に関する推奨事項

マルチリージョンアクセスポイントでの操作時にレプリケーションパフォーマンスを最大限に高めたい場合は、次のことをお勧めします。

  • S3 Replication Time Control (S3 RTC) を設定します。S3 RTC を使用して、予測可能な時間枠内で異なるリージョン間でデータをレプリケートできます。S3 RTC は、Simple Storage Service (Amazon S3) 内に保存されている新規オブジェクトの 99.99% を 15 分以内にレプリケートします (サービスレベルアグリーメントに基づく)。詳細については、「S3 Replication Time Control (S3 RTC)を使用してコンプライアンス要件を満たす」を参照してください。S3 RTC を使用するための追加料金はかかります。詳細については、「Amazon S3 の料金」を参照してください。

  • また、双方向レプリケーションを有効にして、マルチリージョンアクセスポイントを介してバケットが更新されるときにバケットの同期を維持することをサポートします。詳細については、「マルチリージョンアクセスポイント用の双方向レプリケーションルールを作成する」を参照してください。

  • クロスアカウントのマルチリージョンアクセスポイントを作成して、AWS アカウント データを別のバケットに複製します。このアプローチでは、アカウントレベルで分離できるため、ソースバケット以外のさまざまなリージョンのさまざまなアカウントからデータにアクセスして、データを複製できます。クロスアカウントのマルチリージョンアクセスポイントの設定には、追加費用はかかりません。バケットの所有者であっても、マルチリージョンアクセスポイントを所有していない場合、データ転送とリクエストの費用のみがかかります。マルチリージョンアクセスポイントの所有者の場合は、データルーティングとインターネットアクセラレーションの費用がかかります。詳細については、「Amazon S3 の料金」を参照してください。

  • 各レプリケーションルールでレプリカ変更同期を有効にすると、オブジェクトへのメタデータの変更も同期されます。詳細については、「レプリカ変更の同期の有効化する」を参照してください。

  • Amazon CloudWatch メトリクスを有効にして、レプリケーションイベントをモニタリングします。CloudWatch メトリクス料金が適用されます。詳細については、「Amazon CloudWatch の料金」を参照してください。