更改 PersistentVolume 的回收策略

本頁面展示瞭如何更改 Kubernetes PersistentVolume 的回收策略。

準備工作

你需要有一個 Kubernetes 叢集,並且 kubectl 命令列工具已配置為與你的叢集通訊。建議你在至少有兩個不充當控制平面主機的節點叢集上執行本教程。如果你還沒有叢集,可以使用 minikube 建立一個,或者使用以下 Kubernetes 演練場之一。

要檢查版本,請輸入 kubectl version

為什麼要更改 PersistentVolume 的回收策略

PersistentVolumes 可以有多種回收策略,包括 “Retain”(保留)、“Recycle”(回收)和 “Delete”(刪除)。對於動態製備的 PersistentVolumes,預設的回收策略是 “Delete”。這意味著當用戶刪除相應的 PersistentVolumeClaim 時,動態製備的卷會自動刪除。如果捲包含寶貴資料,這種自動行為可能不合適。在這種情況下,更適合使用 “Retain” 策略。使用 “Retain” 策略,如果使用者刪除 PersistentVolumeClaim,相應的 PersistentVolume 將不會被刪除。相反,它會被移到 Released 階段,在該階段可以手動恢復所有資料。

更改 PersistentVolume 的回收策略

  1. 列出叢集中的 PersistentVolumes

    kubectl get pv
    

    輸出類似於:

    NAME                                       CAPACITY   ACCESSMODES   RECLAIMPOLICY   STATUS    CLAIM             STORAGECLASS     REASON    AGE
    pvc-b6efd8da-b7b5-11e6-9d58-0ed433a7dd94   4Gi        RWO           Delete          Bound     default/claim1    manual                     10s
    pvc-b95650f8-b7b5-11e6-9d58-0ed433a7dd94   4Gi        RWO           Delete          Bound     default/claim2    manual                     6s
    pvc-bb3ca71d-b7b5-11e6-9d58-0ed433a7dd94   4Gi        RWO           Delete          Bound     default/claim3    manual                     3s
    

    此列表還包括繫結到每個卷的 PVC 名稱,以便於識別動態製備的卷。

  2. 選擇你的一個 PersistentVolume 並更改其回收策略

    kubectl patch pv <your-pv-name> -p '{"spec":{"persistentVolumeReclaimPolicy":"Retain"}}'
    

    其中 <your-pv-name> 是你選擇的 PersistentVolume 的名稱。

  3. 驗證你選擇的 PersistentVolume 具有正確的策略

    kubectl get pv
    

    輸出類似於:

    NAME                                       CAPACITY   ACCESSMODES   RECLAIMPOLICY   STATUS    CLAIM             STORAGECLASS     REASON    AGE
    pvc-b6efd8da-b7b5-11e6-9d58-0ed433a7dd94   4Gi        RWO           Delete          Bound     default/claim1    manual                     40s
    pvc-b95650f8-b7b5-11e6-9d58-0ed433a7dd94   4Gi        RWO           Delete          Bound     default/claim2    manual                     36s
    pvc-bb3ca71d-b7b5-11e6-9d58-0ed433a7dd94   4Gi        RWO           Retain          Bound     default/claim3    manual                     33s
    

    在上述輸出中,你可以看到繫結到 PVC default/claim3 的卷的回收策略為 Retain。當用戶刪除 PVC default/claim3 時,它將不會自動刪除。

下一步

參考

上次修改時間:2023 年 1 月 11 日上午 11:12 PST:更新 /tasks/administer-cluster 部分的頁面權重 (b1202c78ff)