S3にどんどんファイルを保存すると料金がかさんで行きますので、削除するなりGlacierなどに、移動する必要が出てきます。 その作業をルールを使って自動で実行してくれるのがライフサイクル機能です。 バージョニングの有無でマネジメント方法も少し変わってきます。 まずは、バージョニング機能を向こうにした状態でライフサイクル管理機能を使って見までょう。 プロパティからライフマネジメントメニュで設定が可能です。
バケットかフォルダ単位か指定してルールを設定します。 バージョン管理を無効にしていると3つのルールが表示されます。 - IAストレージへ移行 - Glacierへアーカイブ - ファイルの永久削除 下の画面ではIAストレージへ移行してからGlacierへアーカイブするオプションの2つにチェックを入れてみました。 アップロードしたファイルが30日後にIAストレージに移動され、60日後にGlacierにアーカイブされます。 注意する点としては、この60日はアップロードされた日から60日でIAストレージに移動してからではありません。 例としてアイコンがでて今日アップロードしたファイルがどのタイミングでIAストレージに移行しその後Glacierへアーカイブされるのかがひと目で分かるようになっています。
デフォルトで30日と60日が設定されていますがこれには訳があり、IAストレージはアップロード後すぐに移動することはできません。 最低30日経過しないとIAストレージに移動できない決まりになっていますので、例えば1日と入力すると30日以上を設定しなさいとエラーメッセージがかえってきます。
また、IAストレージからGlacierへのアーカイブもIAストレージへ移行してから30日経過しないと移動できない決まりになっていますので注意が必要です。 IAストレージへのライフサイクル設定は前後30日期間を開けておく必要があるとと覚えておきましょう。 また、IAストレージのみ128KB以上のファイルでないと移行することができないのも注意が必要です。
IAストレージへ移動せずに、直接Glaceirにアーカイブをする設定であれば、アップロードの次の日にはアーカイブが開始できます。GlaceirへのアーカイブはIAストレージと違って日数の制限はありません。 ただし、Glaceirは長期アーカイブすることを目的にシステムが設計されていますので、自動的に最低90日データを保管します。 そのため例えばライフサイクルでGlacierへアーカイブ後のファイルの削除を60日に設定すると削除設定は60日だけれども実際には90日後に削除されますとメッセージがでますので心に止めておく必要があります。
バージニングを有効にした場合のライフサイクルのメニュもちょっとだけ見ておきます。 設定が有効ですと現在のバージョンと古いバージョンの2つのファイルに対してライフサイクルを実行できます。
IAストレージへの移行やGlacierへのアーカイブの設定はバージョニング有り無しで特に変わりませんが、ファイルの削除はバージョニングされた複数のファイルがあるのでちょっと違います。 現在のファイルにExpireを設定しても、S3 バージョニング設定で勉強したとおり実際には削除されずにDelete Markerがつくだけで削除はされません。 永久的に削除する場合には、古いバージョンのファイルでも同じようにルールを設定して削除してあげる必要があります。