如何使用生命週期組態規則清空 Amazon S3 儲存貯體?

2 分的閱讀內容
0

我有儲存數百萬個物件的 Amazon Simple Storage Service (Amazon S3) 儲存貯體。我想使用生命週期組態規則清空儲存貯體,以避免支付儲存費用。

解決方案

**重要:**下列解決方案會永久刪除 Amazon S3 儲存貯體中的所有資料。因為您無法復原資料,因此在刪除之前,請先檢閱儲存貯體中的所有物件和資料。

若要清空具有生活風格組態規則的儲存貯體,請使用主控台或 CLI。

使用主控台

您可以在主控台中建立生命週期組態規則,讓目前版本的物件過期,並永久刪除舊版本物件。若要建立規則,請完成下列步驟:

  1. 開啟 Amazon S3 主控台
  2. 從儲存貯體清單,選擇您要清空的儲存貯體。
  3. 選擇管理索引標籤。
  4. 選擇建立生命週期規則
  5. 對於生命週期規則名稱,輸入規則名稱。
  6. 對於選擇規則範圍,選擇套用至儲存貯體中的所有物件
  7. 選取我確認此規則將套用至儲存貯體中的所有物件
  8. 對於 Lifecycle rule actions (生命週期規則動作),請選取下列選項: 讓目前版本的物件過期 永久刪除物件的非目前版本 刪除過期的物件、刪除標記或不完整的分段上傳
  9. Expire current versions of objects (讓目前版本的物件過期) 欄位,在 ays after object creation (物件建立後的天數) 欄位輸入 1
  10. 永久刪除非目前版本的物件欄位,針對物件成為非目前版本後的天數欄位輸入 1
  11. 若要刪除所有版本,請將要保留的較新版本數量 (選用) 欄位保留空白。
  12. 選取刪除未完成的分段上傳,並在天數欄位輸入 1
  13. 選擇建立規則
  14. 若要建立第二個生命週期規則,請重複步驟 4-7。
  15. 選取下列選項: 刪除過期物件刪除標記或未完成的分段上傳
  16. 選取刪除過期物件刪除標記
  17. 選擇建立規則

Amazon S3 每天會執行生命週期規則一次。Amazon S3 第一次執行規則後,符合過期資格的所有物件都會標記為刪除。您不需要再為標記為刪除的物件付費。

Amazon S3 非同步過期物件版本並移除刪除標記。規則可能需要等清空儲存貯體幾天後才能執行。如需在 Amazon S3 移除非同步物件的詳細資訊,請參閱過期物件

使用 CLI

您可以使用 AWS Command Line Interface (AWS CLI) 建立生命週期規則以清空 S3 儲存貯體,步驟如下:

  1. 建立一個包含 JSON 內容的檔案 (例如 lifecycle-rules.json)。

JSON 範例:

{
  "Rules": [{
      "Expiration": {
        "Days": 1
      },
      "ID": "FullDelete",
      "Filter": {
        "Prefix": ""
      },
      "Status": "Enabled",
      "NoncurrentVersionExpiration": {
        "NoncurrentDays": 1
      },
      "AbortIncompleteMultipartUpload": {
        "DaysAfterInitiation": 1
      }
    },
    {
      "Expiration": {
        "ExpiredObjectDeleteMarker": true
      },
      "ID": "DeleteMarkers",
      "Filter": {
        "Prefix": ""
      },
      "Status": "Enabled"
    }
  ]
}
  1. 在 AWS CLI 命令中使用 JSON 檔案:
aws s3api put-bucket-lifecycle-configuration --bucket delete-marker-testing-demo --lifecycle-configuration file://lifecycle-rules.json

注意: 您可以新增前綴,以只在前綴層級套用規則,例如:

"Filter": {
  "Prefix": "folder1/"
},

相關資訊

移除啟用版本控制的儲存貯體中的過期物件刪除標記 

管理物件的生命週期

如何刪除 Amazon S3 物件和儲存貯體?

刪除儲存貯體

在儲存貯體上設定 S3 生命週期組態