S3レプリケーションを構成しているS3バケットにおける削除マーカーの同期の挙動について教えてください
困っていた内容
東京リージョンと大阪リージョンで S3 クロスリージョンレプリケーションを構成予定です。
また、レプリケーションルール設定時に「削除マーカーレプリケーションの有効化」を検討しています。
上記構成の場合、S3 ライフサイクルルールによって S3 オブジェクトが削除された際、ライフサイクルによる削除によって作成された削除マーカーは同期が行われるのか教えてください。
また、手動で S3 オブジェクトを削除した場合とどのように挙動が異なるかについても教えてください。
質問への回答
まずはじめに、ライフサイクルアクションによって削除されたオブジェクトの削除マーカーはレプリケートされない仕様になっています。
そのため、ライフサイクルルールによって削除されたオブジェクトは「削除マーカーレプリケーションの有効化」を行っても、レプリケーション先バケットでは削除は行われません。
レプリケーション設定でレプリケートされないものは何ですか?
・ライフサイクル設定によって実行されたアクション。
たとえば、ライフサイクル設定がレプリケート元バケットでのみ有効である場合、Amazon S3 は失効したオブジェクトに削除マーカーを作成しますが、その削除マーカーはレプリケートされません。同じライフサイクル設定をレプリケート元バケットとレプリケート先バケットの両方に適用する場合は、両方で同じライフサイクル設定を有効にします。ライフサイクル設定についての詳細は、オブジェクトのライフサイクルの管理 を参照してください。
続いて手動でオブジェクトを削除した場合ですが、S3 レプリケーションのバージョンによって挙動が異なります。
削除マーカーがレプリケーションされる場合は以下の通りです。
・S3 レプリケーションがバージョン V1 の場合
・S3 レプリケーションがバージョン V2 かつ、削除マーカーレプリケーションを有効にした場合
なお、S3 レプリケーションがバージョン V2 の場合、デフォルトでは削除マーカーはレプリケートされません。
いずれの場合におきましても、ライフサイクルアクションによって削除されたオブジェクトの削除マーカーはレプリケートされない動作となります。







