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

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

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


参考

https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/dev/crr-what-is-isnot-replicated.html


目的

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 は削除マーカーを追加し、クロスリージョンレプリケーションはそれをレプリケート先バケットにレプリケートします。 バージョニングと削除マーカーの詳細については、「バージョニングの使用」を参照してください。
https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/dev/crr-what-is-isnot-replicated.html

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

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 .

コメント

このブログの人気の投稿

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2020-12-01 09:41:49 RSSフィード2020-12-01 09:00 分まとめ(69件)