S3で一定期間が経過したファイルをライフサイクルで削除したい2017-11-24S3で一定期間が経過したファイルをライフサイクルで削除したいAWSS3上にアクセスログを定期的に書き込むようなシステムがあったとして、古いアクセスログを自動的に消す仕組みを作ってみたいと思います。S3バケットにライフサイクルルールを設定し、古いログを削除するよう設定します。ライフサイクルルールの設定手順ライフサイクルルールの設定はバケット単位で設定します。バケットの「管理」の「ライフサイクル」から「ライフサイクルルールの追加」を選択します。ライフサイクルルールの「ルール名」に任意のルールを設定します。フィルターの追加も任意で構いません。これを設定するとtest/ディレクトリ以下のオブジェクトにのみライフサイクルを設定するといった設定ができます。以降の設定は今回はそのまま「次へ」を選択します。Glacierなどに以降するライフサイクルを設定する場合にはここで設定を行います。ライフサイクルルールで削除の設定を行います。「オブジェクトの現行バージョンを執行する」の箇所が重要です。30日より前のログが不要である場合には30を設定します。今回はテストのために1日経過したオブジェクトを削除するように設定しています。設定を確認して、「保存」を選択します。実行結果これが一日後...「s3_index.html」が削除されていることがわかります。まとめライフサイクル機能をつかうことで手動で過去ログを削除するといったわずわらしさから開放されます。消し忘れや誤った削除も発生しませんので是非活用してみてください。誰?AWSとk8sができます。8LinksGitHubtwitter引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。