全部產品
Search
文件中心

Object Storage Service:生命週期配置樣本

更新時間:Jun 19, 2024

本文檔提供多個常見的生命週期配置樣本,以便您更好地使用生命週期規則管理您儲存空間(Bucket)內的檔案(Object)。

單個篩選條件

每個生命週期規則都包含至少一個篩選條件,篩選條件可用於確定Bucket中適用生命週期規則的部分或所有Object。以下生命週期配置顯示了如何指定篩選條件的樣本。

樣本1:達到指定天數後轉儲和刪除指定首碼的Object

在此生命週期配置規則中,篩選條件指定了prefix為doc/,此規則將應用於prefix為doc/的Object,例如doc/test1.txtdoc/test2.jpg等Object,並指定在Object最後修改時間超過180天后將其轉換為IA儲存類型(Transition操作)、在Object最後修改時間超過365天后將其刪除(Expiration操作)。

以上生命週期配置規則的XML以及控制台配置樣本如下:

  • XML

    <LifecycleConfiguration>
      <Rule>
        <ID>test-rule0</ID>
        <Prefix>doc/</Prefix>
        <Status>Enabled</Status>    
        <Transition>
          <Days>180</Days>
          <StorageClass>IA</StorageClass>
        </Transition>
        <Expiration>
          <Days>365</Days>
        </Expiration>
      </Rule>
    </LifecycleConfiguration>
  • 控制台

    說明

    您還可以通過控制台配置符合以上條件的生命週期規則,配置詳情如下圖所示。具體操作,請參見設定生命週期規則

    rule1

樣本2:達到指定天數後刪除Bucket內的所有Object

指定生命週期規則應用於某個Bucket內的所有Object,並指示該Bucket內的所有Object在距其最後修改時間超過300天后到期。

以上生命週期配置規則的XML以及控制台配置樣本如下:

  • XML

    <LifecycleConfiguration>
      <Rule>
        <ID>test-rule1</ID>
        <Prefix></Prefix>
        <Status>Enabled</Status>
        <Expiration>
          <Days>300</Days>
        </Expiration>
      </Rule>
    </LifecycleConfiguration>
  • 控制台

    說明

    您還可以通過控制台配置符合以上條件的生命週期規則,配置詳情如下圖所示。具體操作,請參見設定生命週期規則

    rule2

樣本3:達到指定日期後刪除Bucket內的所有Object

指定生命週期規則應用於某個Bucket內的所有Object(即Prefix為空白),並指示該Bucket內的所有最後修改時間早於2023年12月30日的Object到期。

以上生命週期配置規則的XML以及控制台配置樣本如下:

  • XML

    <LifecycleConfiguration>
      <Rule>
        <ID>test-rule0</ID>
        <Prefix></Prefix>
        <Status>Enabled</Status>
        <Expiration>
          <CreatedBeforeDate>2023-12-30T00:00:00.000Z</CreatedBeforeDate>
        </Expiration>
      </Rule>
    </LifecycleConfiguration>
  • 控制台

    說明

    您還可以通過控制台配置符合以上條件的生命週期規則,配置詳情如下圖所示。具體操作,請參見設定生命週期規則

    rule3

重疊的篩選條件

以下說明了篩選條件重疊的情況下,是否造成生命週期操作衝突的情況。

樣本1:基於重疊首碼的生命週期操作(無衝突)

假設您配置了包含兩個指定重疊首碼的生命週期規則,規則詳情如下:

  • 規則1:指定名為test/的Prefix,並指定Object距其最後修改時間超過30天后轉換為Archive儲存類型。

  • 規則2:指定針對整個Bucket(即Prefix為空白),並指定Object距其最後修改時間超過365天后全部刪除。

執行結果:由於規則無衝突,因此規則1和規則2指定的行為均生效。

以上生命週期配置規則的XML以及控制台配置樣本如下:

  • XML

    <LifecycleConfiguration>
      <Rule>
        <ID>test-rule1</ID>
        <Prefix>test/</Prefix>
        <Status>Enabled</Status>
        <Transition>
          <Days>30</Days>
          <StorageClass>Archive</StorageClass>
        </Transition>
      </Rule>
     <Rule>
        <ID>test-rule2</ID>
        <Prefix></Prefix>
        <Status>Enabled</Status>
        <Expiration>
          <Days>365</Days>
        </Expiration>
      </Rule>  
    </LifecycleConfiguration>
  • 控制台

    說明

    您還可以通過控制台配置符合以上條件的生命週期規則,配置詳情如下圖所示。具體操作,請參見設定生命週期規則

    • 規則1rule7

    • 規則2rule6

樣本2:基於標籤篩選的生命週期操作(衝突)

假設您指定了兩條生命週期規則,規則詳情如下:

  • 規則1:指定了基於標籤的篩選條件(tag1/value1),並指定Object在其最後修改時間超過180天后轉換為IA儲存類型。

  • 規則2:指定了基於標籤的篩選條件(tag2/value2),並指定Object在其最後修改時間超過10天后到期。

執行條件:存在帶有兩組標籤的Object,即兩個規則都將應用於相同Object。

執行結果:Object將在其最後修改時間超過10天后到期。Object被刪除後,轉換儲存類型操作將不再有效。因此,僅規則2中指定的到期行為生效。

以上生命週期配置規則的XML以及控制台配置樣本如下:

  • XML

    <LifecycleConfiguration>
      <Rule>
        <ID>test-rule1</ID>
        <Prefix></Prefix>
        <Tag>
          <Key>tag1</Key>
          <Value>value1</Value>
        </Tag>
        <Status>Enabled</Status>
        <Transition>
          <Days>180</Days>
          <StorageClass>IA</StorageClass>
        </Transition>
      </Rule>
      <Rule>
        <ID>test-rule2</ID>
        <Prefix></Prefix>
        <Tag>
          <Key>tag2</Key>
          <Value>value2</Value>
        </Tag>
        <Status>Enabled</Status>
        <Expiration>
          <Days>10</Days>
        </Expiration>
      </Rule>
    </LifecycleConfiguration>
  • 控制台

    說明

    您還可以通過控制台配置符合以上條件的生命週期規則,配置詳情如下圖所示。具體操作,請參見設定生命週期規則

    • 規則1rule4

    • 規則2rule5

樣本3:基於相同時間的生命週期操作(衝突)

假設您指定了兩條生命週期規則,規則詳情如下:

  • 規則1:指定將最後一次修改時間超過365天的Object轉為低頻訪問類型。

  • 規則2:指定將最後一次修改時間超過365天的Object刪除。

執行結果:規則命中的Object將在距離其最後一次修改時間超過365天后刪除。

以上生命週期配置規則的XML以及控制台配置樣本如下:

  • XML

    <LifecycleConfiguration>
      <Rule>
        <ID>rule1</ID>
        <Prefix></Prefix>    
        <Status>Enabled</Status>
        <Transition>
          <Days>365</Days>
          <StorageClass>IA</StorageClass>
        </Transition>
      </Rule>
      <Rule>
        <ID>rule2</ID>
        <Prefix></Prefix>    
        <Status>Enabled</Status>
        <Expiration>
          <Days>365</Days>
        </Expiration>
      </Rule>
    </LifecycleConfiguration>
  • 控制台

    說明

    您還可以通過控制台配置符合以上條件的生命週期規則,配置詳情如下圖所示。具體操作,請參見設定生命週期規則

    • 規則1rule17

    • 規則2rule6

樣本4:基於重疊首碼且指向相同行為的生命週期操作(衝突)

假設您指定了兩條生命週期規則,規則詳情如下:

  • 規則1:指定首碼為logs/的Object距其最後修改時間超過180天后轉為低頻訪問類型。

  • 規則2:指定當前Bucket中的所有Object距其最後修改時間超過30天后轉為低頻訪問類型。

執行結果:該Bucket中的所有Object距其最後修改時間超過30天后轉為低頻訪問類型。

以上生命週期配置規則的XML以及控制台配置樣本如下:

  • XML

    <LifecycleConfiguration>
      <Rule>
        <ID>rule1</ID>
        <Prefix>logs/</Prefix>
        <Status>Enabled</Status>
        <Transition>
          <Days>180</Days>
          <StorageClass>IA</StorageClass>
        </Transition>
      </Rule>
     <Rule>
        <ID>rule2</ID>
        <Prefix></Prefix>
        <Status>Enabled</Status>
        <Transition>
          <Days>30</Days>
          <StorageClass>IA</StorageClass>
        </Transition>
      </Rule>  
    </LifecycleConfiguration>
  • 控制台

    說明

    您還可以通過控制台配置符合以上條件的生命週期規則,配置詳情如下圖所示。具體操作,請參見設定生命週期規則

    • 規則1rule32

    • 規則2rule30

禁用生命週期規則

假設您指定了兩條生命週期規則,規則詳情如下:

  • 規則1(禁用):指定首碼為logs/的Object,並在其建立100天后轉換為IA儲存類型。

  • 規則2(啟用):指定首碼為documents/的Object,並在其建立50天后轉換為Archive儲存類型。

執行結果:僅<Status>處於Enabled(啟用)狀態的規則生效。

以上生命週期配置規則的XML以及控制台配置樣本如下:

  • XML

    <LifecycleConfiguration>
      <Rule>
        <ID>test-rule1</ID>
        <Prefix>logs/</Prefix>
        <Status>Disabled</Status>
        <Transition>
          <Days>100</Days>
          <StorageClass>IA</StorageClass>
        </Transition>
      </Rule>
      <Rule>
        <ID>test-rule2</ID>
        <Prefix>documents/</Prefix>
        <Status>Enabled</Status>
        <Transition>
          <Days>50</Days>
          <StorageClass>Archive</StorageClass>
        </Transition>
      </Rule>
    </LifecycleConfiguration>
  • 控制台

    說明

    您還可以通過控制台配置符合以上條件的生命週期規則,配置詳情如下圖所示。具體操作,請參見設定生命週期規則

    • 規則1rule8

    • 規則2rule9

結合版本控制的生命週期規則

假設您有一個啟用了版本控制的Bucket,即該Bucket內的每個Object都有一個目前的版本以及零個或零個以上的非目前的版本。有關版本控制的更多資訊請參見版本控制概述

樣本1:達到指定天數後轉儲和刪除非目前的版本Object

假設您指定了該Bucket中目前的版本Object距其最後修改時間超過10天后轉換為IA儲存類型,Object成為非目前的版本60天后轉換為Archive儲存類型,Object成為非目前的版本90天后刪除。

以上生命週期配置規則的XML以及控制台配置樣本如下:

  • XML

    <LifecycleConfiguration>
      <Rule>
        <ID>test-rule0</ID>
        <Prefix></Prefix>
        <Status>Enabled</Status>
        <Transition>
          <Days>10</Days>
          <StorageClass>IA</StorageClass>
        </Transition>
        <NoncurrentVersionTransition>
          <NoncurrentDays>60</NoncurrentDays>
          <StorageClass>Archive</StorageClass>
        </NoncurrentVersionTransition>
        <NoncurrentVersionExpiration>
          <NoncurrentDays>90</NoncurrentDays>
        </NoncurrentVersionExpiration>
      </Rule>
    </LifecycleConfiguration>
  • 控制台

    說明

    您還可以通過控制台配置符合以上條件的生命週期規則,配置詳情如下圖所示。具體操作,請參見設定生命週期規則

    rule9

樣本2:刪除到期刪除標記

當Object在僅剩一個刪除標記版本,其餘版本均已刪除的情況下執行Expiration到期操作,則該刪除標記即為到期刪除標記。移除到期刪除標記樣本如下:

以上生命週期配置規則的XML以及控制台配置樣本如下:

  • XML

    <LifecycleConfiguration>
      <Rule>
        <ID>test-rule0</ID>
        <Prefix></Prefix>
        <Status>Enabled</Status>
        <Expiration>
          <ExpiredObjectDeleteMarker>true</ExpiredObjectDeleteMarker>
        </Expiration>
      </Rule>
    </LifecycleConfiguration>
  • 控制台

    說明

    您還可以通過控制台配置符合以上條件的生命週期規則,配置詳情如下圖所示。具體操作,請參見設定生命週期規則

    rule10

清理到期片段

通過生命週期規則指定在分區上傳過程中,首碼為logs的片段(即未執行CompleteMultipartUpload的Object)5天后到期。

以上生命週期配置規則的XML以及控制台配置樣本如下:

  • XML

    <LifecycleConfiguration>
      <Rule>
        <ID>lifecyclerule1</ID>
        <Prefix>logs/</Prefix>
        <Status>Enabled</Status>
        <AbortMultipartUpload>
          <Days>5</Days>
        </AbortMultipartUpload>
      </Rule>
    </LifecycleConfiguration>
  • 控制台

    說明

    您還可以通過控制台配置符合以上條件的生命週期規則,配置詳情如下圖所示。具體操作,請參見設定生命週期規則

    rule11