LoginSignup
5
3

More than 5 years have passed since last update.

S3のクロスリージョンレプリケーションで削除マーカーがレプリケーションされるか確認

Posted at

投稿内容は私個人の意見であり、所属企業・部門見解を代表するものではありません。

参考

目的

S3のクロスリージョンレプリケーションで削除マーカーがレプリケーションされるか確認する

手順

転送元のS3バケットと転送先のS3バケットを作成する(それぞれリージョンは別にする)
転送元のバージョンは必須ではないが今回は有効にする
転送先のバージョニングは必須
image.png

転送元のS3バケットでクロスリージョンレプリケーションの設定を行う
管理からレプリケーションをクリックして、ルールの追加をクリック

image.png

すべてのオブジェクトを転送するかプレフィクスかタグでレプリケーションするオブジェクトを指定する
image.png

送信先のS3バケットを指定する
image.png

送信元のS3が送信先のS3に書き込みできるようにIAMロールを付与する。AWSサービスにIAMロールを付与するため、サービスロールと呼ばれる。
image.png

作成したIAMロールを書くにするとS3が信頼関係にある
image.png


{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": [
                "s3:Get*",
                "s3:ListBucket"
            ],
            "Effect": "Allow",
            "Resource": [
                "arn:aws:s3:::<送信元バケット名>",
                "arn:aws:s3:::<送信元バケット名>/*"
            ]
        },
        {
            "Action": [
                "s3:ReplicateObject",
                "s3:ReplicateDelete",
                "s3:ReplicateTags",
                "s3:GetObjectVersionTagging"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::<送信先バケット名>/*"
        }
    ]
}

ここまでで準備完了

レプリケーション実施

転送元のS3バケットにファイルをアップロードする
※レプリケーション設定前にUploadしたオブジェクトはレプリケートされない

image.png

転送先のバケットにオブジェクトがレプリケーションされていることを確認する
image.png

転送元のS3バケットでオブジェクトを削除する

image.png

削除マーカーが付与される
image.png

転送先のs3バケットを確認すると削除マーカーはレプリケーションされない
image.png

2018/11/16時点だと日本語マニュアルに以下の記述があり挙動とことなるが、

削除オペレーションとクロスリージョンレプリケーション
レプリケート元バケットからオブジェクトを削除した場合、クロスリージョンレプリケーションの動作は次のようになります。
DELETE リクエストでオブジェクトバージョン ID が指定されていない場合、Amazon S3 は削除マーカーを追加し、クロスリージョンレプリケーションはそれをレプリケート先バケットにレプリケートします。 バージョニングと削除マーカーの詳細については、「バージョニングの使用」を参照してください。

英語版の方が記載内容が新しくなっており、転送設定のバージョンが新しい場合は、削除マーカーがレプリケーションされない仕様となっている。

How Delete Operations Affect CRR
If you delete an object from the source bucket, the following occurs:
If you make a DELETE request without specifying an object version ID, Amazon S3 adds a delete marker. Amazon S3 deals with the delete marker as follows:
If using latest version of the replication configuration, that is you specify the Filter element in a replication configuration rule, Amazon S3 does not replicate the delete marker.
If don't specify the Filter element, Amazon S3 assumes replication configuration is a prior version V1. In the earlier version, Amazon S3 handled replication of delete markers differently. For more information, see Backward Compatibility .

5
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
3