更改持久卷的回收策略

此页面展示了如何更改 Kubernetes 持久卷的回收策略。

开始之前

您需要有一个 Kubernetes 集群,并且 kubectl 命令行工具必须配置为与您的集群通信。建议您在至少有两个节点的集群上运行本教程,这些节点不充当控制平面主机。如果您还没有集群,可以使用 minikube 创建一个,或者您可以使用以下 Kubernetes 游乐场之一

要检查版本,请输入 kubectl version

为什么要更改持久卷的回收策略

持久卷可以有不同的回收策略,包括 "Retain"、"Recycle" 和 "Delete"。对于动态供应的持久卷,默认的回收策略是 "Delete"。这意味着当用户删除相应的持久卷声明时,动态供应的卷会自动删除。这种自动行为可能不适合卷包含宝贵数据的情况。在这种情况下,使用 "Retain" 策略更合适。使用 "Retain" 策略,如果用户删除了持久卷声明,则相应的持久卷不会被删除。相反,它将被移至已释放阶段,用户可以手动恢复所有数据。

更改持久卷的回收策略

  1. 列出集群中的持久卷

    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
    

    此列表还包括绑定到每个卷的声明的名称,便于识别动态供应的卷。

  2. 选择一个持久卷并更改其回收策略

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

    其中 <your-pv-name> 是您选择的持久卷的名称。

  3. 验证您选择的持久卷是否具有正确的策略

    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
    

    在前面的输出中,您可以看到绑定到声明 default/claim3 的卷的回收策略为 Retain。当用户删除声明 default/claim3 时,它不会被自动删除。

下一步

参考

上次修改时间:2023 年 1 月 11 日上午 11:12 PST:更新 /tasks/administer-cluster 部分中的页面权重 (b1202c78ff)