Posted at

今さらだけどS3のライフサイクルを試してみた。

More than 1 year has passed since last update.


はじめに

前回、「今さらだけどS3のバージョニングを試してみた。」でS3のバージョニング機能を試してみました。

ですがこのままだとずーっと古いバージョンのオブジェクトが残り続けてしまいます。。。

ということで次はS3のライフサイクル管理を設定してみることにします。


設定

バケットの [プロパティ] で表示される「ライフサイクル」を開き「+ルールを追加する」をクリックします。

s3-lifecycle-delete01.png


ステップ1:ルールターゲットの選択

ライフサイクルルールの設定にステップになるので「次のルールを適用」「バケット全体」にチェックし「ルールの設定>」をクリックします。

s3-lifecycle-delete02.png


ステップ2:ルールの設定

今回は「以前のバージョンの操作」の完全にチェックし、日数を「1日」にして「確認」をクリックします。

s3-lifecycle-delete03.png


ステップ3:確認と名前

「ルール名」を入力し「ルールの作成と有効化」をクリックして完了です。

s3-lifecycle-delete04.png

するとライフサイクルに作成したルールがリストされているのが確認できます。

s3-lifecycle-delete05.png


実行結果

とりあえず分かりやすいように何度か同じファイルをアップロードして複数バージョン用意しました。

今回の設定の場合、1日後には削除されているはずです。

lifecycle20170130001029.png

翌日。。。

lifecycle20170131133141.png

最新のもの以外はすっかり削除されているのが確認できました。


おわりに

バージョニング機能だけだと古いオブジェクトが残り続けるという課題がありましたが、ライフサイクル機能も一緒に設定してあげることで古いバージョンをいちいち手動で削除する必要がなくなりました。

これで「誤削除防止」「古いバージョンの消し忘れ」への対応が完了です。