S3 Lifecycle Management

Lifecycle Management

Lifecycle Management 定義物件存留期間,S3 所要採取的動作 ( e.g. 將物件轉換成另一個 Stroage Classes、archive Object,或在指定期限後刪除)。

啟用了 Versioning 的 S3 Bucket 中,同一個物件可有多個 Version,包括 Current version、Previous version,而 Lifecycle Management 就是在定義 Current version、Previous version 的動作。

建立 Lifecycle Management

  1. 選擇你現在要設定 Lifecycle Management 的 S3 Bucket( https://console.aws.amazon.com/s3
  2. 點選 Management 按鈕後,來新增 Add lifecycle rule 訂定一個規則

IMAGE

  1. 輸入 rule name 以及看是否要有個 Prefix(前綴)、Tag(標籤)來幫助分類,如果不需要的話,直接選取 Apply to all objects in the bucket 即可

https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys

IMAGE

  1. 可以同時為 Current version、Previous version 定義 transition(以兩者都定義為範例)
  • 選擇在 30 天後,將 Upload 的 Object 轉為 Standard-IA
  • 選擇在 60 天後,將 Upload 的 Object 轉為 Glacier

Glacier: https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-transition-general-considerations.html

IMAGE

  1. 接下來設定一些 Expiration 的問題
  • 選取 Expire current version of object,然後輸入在自 Object Uploaad 的 425 天後,刪除該 Object。如果有選擇此選項,則無法選擇下方的 Clean up expired object delete marker 的選項。
  • 選取 Permanently delete previous versions,然後輸入自 Object 成為舊版 version 的 425 天後要永久刪除該 Object。
  • Clean up incomplete multipart uploads (清除未完成的分段上傳) 在一般來說都建議選取。例如,可以設定要在啟動分段上傳的 7 天後,結束並清除所有未完成的上傳。

IMAGE

  1. 最後,稍微看一下自己的設定,就完成 Lifecycle Management 了~

IMAGE

https://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-lifecycle.html

總結

  • Automates moving your objects between the different storage tiers.
  • Can be used in conjunction with versioning.
  • Can be applied to current versions and previous versions.