目次

クロスリージョンレプリケーションの注意点

仕様や制限は以下の通り、★が注意点になります。
★レプリケーション元、レプリケーション先ともにバージョニングの有効化は必須
・レプリケーションルールは複数作成可能
・ルールで処理対象をフィルタ可能
・フィルタにはプレフィックスとタグ指定が可能
・ルールは優先度が設定できる(優先度の数値が高いルールが優先)
・優先度の高いルールで処理されたオブジェクトは、低いルールで処理されない
★オブジェクトの完全削除はレプリケーションできない
・削除マーカーは設定次第でレプリケーション可能
・ルール設定で[タグを使用したスコープ指定]と[削除マーカーのレプリケーション]は同時に使用できない
・ライフサイクルで付与する削除マーカーはレプリケーションできない

レプリケーション元、レプリケーション先ともにバージョニングの有効化は必須

①バージョニングを有効化することで、Key(オブジェクト名)だけ指定した削除は物理的な削除でなく論理的な削除(削除マーカーの付与)になります。
 そのため、オブジェクトを削除したい場合は、オブジェクトIDを指定して削除する必要があります。
②論理的な削除(削除マーカーの付与)の場合、削除したオブジェクトは非現行バージョンとして残るのでS3バケットの使用容量は下がりません。

オブジェクトの完全削除はレプリケーションできない

上で説明した物理的な削除(完全削除)はレプリケーションされないので、下記のような対策案が必要になります。

①レプリケーション元の削除イベント(オブジェクトID指定)をトリガーにLambda等を実行し、レプリケーション先も削除する。(オブジェクトID指定)
Lambdaサンプル(S3ファイル削除のレプリケーション)

②レプリケーション元、レプリケーション先ともオブジェクトIDを指定して削除する。

③レプリケーション元で論理的な削除(削除マーカーの付与)をし、レプリケーション先に削除マーカーをレプリケーションする。
 ライフサイクルルールで「非現行バージョンを削除する」と「期限切れのオブジェクト削除マーカーを削除する」を設定し、時間経過とともに削除する。