為什麼我的 Amazon S3 儲存貯體上的生命週期規則在一天前應用後仍然不起作用?

1 分的閱讀內容
0

我在 Amazon Simple Storage Service (Amazon S3) 儲存貯體上設定了生命週期組態規則,將物件轉換為另一個儲存類別,或物件過期。不過,物件並未根據規則變更。

解決方法

當符合生命週期規則與完成規則動作之間出現延遲時,就會發生這種情況。符合生命週期規則時,即使動作尚未完成,也會套用計費變更。

範例:

  • 如果您具有物件到期的生命週期規則,則到期後不會向您收取儲存體的費用。即使物件並非立即到期也適用。
  • 物件轉換時間過後,將物件轉換為 GLACIER 儲存類別的生命週期規則會收取 Amazon S3 Glacier 儲存體費用。即使物件並非立即轉換為 GLACIER 儲存類別,也會發生這種情況。
    **注意:**如果您將生命週期轉換設定為 INTELLIGENT_TIERING 儲存類別,則在物件轉換為 INTELLIGENT_TIERING 儲存類別前,不會變更計費。這是例外情況。

S3 生命週期每天只執行一次。此外,Amazon S3 ](https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#intro-lifecycle-rules-number-of-days)會將物件的轉換或到期日期四捨五入[到翌日的午夜 UTC。例如,您可以在 UTC 2020 年 1 月 1 日 10 點 30 分建立具有生命週期規則的物件,以在 3 天後轉換該物件。針對該物件,轉換日期為 UTC 2020 年 1 月 5 日 0 點。檢查是否符合生命週期規則之前,請務必確認是否已經過足夠的時間。

如果已經過足夠的時間且不符合生命週期規則,則依據生命週期規則,檢查您是否正確設定物件的字首篩選條件。

重要事項:

  • 如果您的生命週期規則未指定字首篩選條件,則該規則會套用到儲存貯體中的所有物件。
  • 如果您將字首篩選條件指定為 images/,則生命週期規則會套用至字首 images/ 下的所有物件。
    **注意:**請務必在字首篩選條件結尾處指定 / 字元。如果您在字首篩選條件的開頭指定 / 字元,則無法正確評估生命週期規則。

您可以使用 HeadObject API 或 Amazon S3 主控台,以檢查目前版本物件的排程到期時間。

**注意:**如果您在執行 AWS Command Line Interface (AWS CLI) 命令時收到錯誤訊息,請確定您使用的是最新版本的 AWS CLI

執行下列 AWS CLI 命令,以了解物件的到期時間:

$ aws s3api head-object --bucket bucketname --key file.txt

輸出看起來類似於以下內容:

 {  
 "AcceptRanges": "bytes",  
 "Expiration": "expiry-date=\"Wed, 15 Mar 2023 00:00:00 GMT\", rule-id=\"MyExpirationRule\"",  
 "LastModified": "2023-02-22T17:20:34+00:00",  
 "ContentLength": 6,  
 "ETag": "\"edae42exa0d2b93b123346740107dacf\"",  
 "VersionId": "SoshCRUrlabc1v4ZzYEA123PvWcaeF6F",  
 "ContentType": "text/plain",  
 "ServerSideEncryption": “AES256”,  
 "Metadata": {}  
}

到期回應標頭提供 expiry-daterule-idexpiry-date 欄位顯示 Amazon S3 將物件排入佇列以進行移除並以非同步方式移除物件的日期。rule-id field 顯示套用至物件的生命週期規則。

要使用 Amazon S3 主控台來檢查物件的到期日期,請完成下列步驟:

  1. 開啟 Amazon S3 主控台
  2. 儲存貯體清單,選擇儲存貯體的名稱。
  3. 選擇您要檢查的物件名稱。
  4. 選擇屬性標籤。
  5. 物件管理概觀區段的管理組態下,檢閱到期規則到期日期欄位。

到期日期欄位顯示 Amazon S3 將物件排入佇列以進行移除並以非同步方式移除物件的日期。到期規則欄位顯示套用至物件的生命週期規則。

注意:僅目前版本物件會傳回 HEAD 或 GET 請求的到期回應標頭。之前版本和刪除標記不會傳回此回應標頭。此外,您不會收到符合轉換資格的物件回應標頭。

您可以使用 S3 Storage Lens 儀表板,監控作用中的生命週期規則進度以及生命週期規則進行的更新。

相關資訊

設定儲存貯體的生命週期組態

AWS 官方
AWS 官方已更新 1 年前