かべぎわブログ

技術的なことについてかけたらいいな…

同じリージョンのS3同士を同期させる

概要

同じリージョンにあるS3バケットを同期させてみようと思います。

同期させる方法

AWSCLIをつかいます。
以下のようにすることでS3バケット2つを同期させることができます。

$ aws s3 sync s3://wawawa-src s3://wawawa-dst

実際にやってみる

実際にやってみます。

前提としてバケットの中身は以下のような感じだとします。

$ aws s3 ls --recursive s3://wawawa-src/
2018-10-02 03:31:37         20 sasasa.txt
2018-10-02 03:30:29          0 wawawa_dir/
2018-10-02 03:31:10         20 wawawa_dir/test.txt
$ aws s3 ls --recursive s3://wawawa-dst/
$ 


aws syncコマンドで同期させます。

$ aws s3 sync s3://wawawa-src s3://wawawa-dst
copy: s3://wawawa-src/wawawa_dir/test.txt to s3://wawawa-dst/wawawa_dir/test.txt
copy: s3://wawawa-src/sasasa.txt to s3://wawawa-dst/sasasa.txt    

同期できました!!!

$ aws s3 ls --recursive s3://wawawa-src/
2018-10-02 03:31:37         20 sasasa.txt
2018-10-02 03:30:29          0 wawawa_dir/
2018-10-02 03:31:10         20 wawawa_dir/test.txt
$ aws s3 ls --recursive s3://wawawa-dst/
2018-10-02 03:35:59         20 sasasa.txt
2018-10-02 03:35:59         20 wawawa_dir/test.txt

おわりに

これを定期的にcronで動かすとかするとゆるーい同期が実現できる。

Amazon Web Services パターン別構築・運用ガイド 改訂第2版 (Informatics&IDEA)

Amazon Web Services パターン別構築・運用ガイド 改訂第2版 (Informatics&IDEA)