S3 Versioningが有効化されている S3バケットにライフサイクルルールを適用

S3 Versioningが有効化されている S3バケットにライフサイクルルールを適用

Clock Icon2025.02.06

前回は、S3 Versioningを有効化してオブジェクトを保護する記事を書きました

https://dev.classmethod.jp/articles/s3-versioning-dongho/

管理の自動化: ライフサイクルポリシーを設定することで、不要な非現行バージョンが自動的に削除され、ストレージの無駄遣いを防止します。

今回は ライフサイクルルールを設定して過去のバージョンを自動で削除する方法をご紹介します。

こちらの方法で、不要なデータの管理を効率的に行うことができます。


ライフサイクルルールの活用

Versioning を有効化すると、オブジェクトの古いバージョンが長期間残る可能性があります。
そのため、ライフサイクルルールを設定して、ユーザーが設定した不要なバージョンを自動的に削除することが可能です


実装方法

ライフサイクルルールの設定

  1. S3 バケットの「管理」タブを開きます。
  2. 「ライフサイクル設定」セクションで、ライフサイクルルール(例:「ExpireNoncurrentVersions」)を作成します。
    ルールの設定項目:
    • 対象: バケット内の全オブジェクト(または特定のプレフィックスやタグに絞ることも可能)
    • 非現行バージョンの有効期限: NoncurrentDays を 90 日に設定

ライフサイクルルールの JSON 例

{
  "Rules": [
    {
      "ID": "ExpireNoncurrentVersions",
      "Status": "Enabled",
      "NoncurrentVersionExpiration": {
        "NoncurrentDays": 90
      }
    }
  ]
}

このルールにより、オブジェクトの現行バージョンが更新されると、古いバージョンは90日経過後に自動的に削除されるようになります。


まとめ

Amazon S3 の Versioning を有効にし、さらにライフサイクルルールで古いオブジェクトを90日後に削除できます。
この構成によってVersioningされているデータの管理を自動化できます

ご質問やご意見がありましたら、コメント欄にてお気軽にお知らせください!


アノテーション株式会社について

アノテーション株式会社はクラスメソッドグループのオペレーション専門特化企業です。サポート・運用・開発保守・情シス・バックオフィスの専門チームが、最新 IT テクノロジー、高い技術力、蓄積されたノウハウをフル活用し、お客様の課題解決を行っています。当社は様々な職種でメンバーを募集しています。「オペレーション・エクセレンス」と「らしく働く、らしく生きる」を共に実現するカルチャー・しくみ・働き方にご興味がある方は、アノテーション株式会社 採用サイト をぜひご覧ください

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.