• k8s中pv的回收策略


    博客主页:https://tomcat.blog.csdn.net
    博主昵称:农民工老王
    主要领域:Java、Linux、K8S
    期待大家的关注💖点赞👍收藏⭐留言💬
    家乡

    pv(Persistent Volume),持久卷,是集群中的一块存储,可以由管理员事先供应,或者 使用存储类(Storage Class)来动态供应。 持久卷是集群资源,就像节点也是集群资源一样。pv一般通过pvc申领和消耗。在pvc删除后,pv是否继续存在由其回收策略决定。

    官方资料

    关于其回收策略,官方文档是这样说的:

    PersistentVolume 对象的回收策略告诉集群,当其被 从申领中释放时如何处理该数据卷。 目前,数据卷可以被 Retained(保留)或 Deleted(删除)。
    保留(Retain)
    回收策略 Retain 使得用户可以手动回收资源。当 PersistentVolumeClaim 对象 被删除时,PersistentVolume 卷仍然存在,对应的数据卷被视为"已释放(released)"。 由于卷上仍然存在这前一申领人的数据,该卷还不能用于其他申领。
    删除(Delete)
    对于支持 Delete 回收策略的卷插件,删除动作会将 PersistentVolume 对象从 Kubernetes 中移除,同时也会从外部基础设施(如 AWS EBS、GCE PD、Azure Disk 或 Cinder 卷)中移除所关联的存储资产。 动态供应的卷会继承其 StorageClass 中设置的回收策略,该策略默认 为 Delete。 管理员需要根据用户的期望来配置 StorageClass;否则 PV 卷被创建之后必须要被 编辑或者修补。

    我的验证

    基于我查看的资料和操作实践,我有以下两点判断。

    1. 如果pv的回收策略(persistentVolumeReclaimPolicy)为Delete, 就意味着,一旦这个pv没有pvc,也就是处于Released 状态后,那么这个pv将被k8s集群自动删除。反之,如果回收策略是Delete,pv则不会被自动删除。
    2. 删除pv,并不会自动删除nfs服务器上对应的文件夹。这一点和官方文档中的描述略有出入,也不知道是中文文档的翻译问题,还是我的操作有误。

    判断依据

    我的验证步骤如下:
    1 确认 name 为 pvc-ffab70bd-b658-4d8d-b601-be3ca111350f 的pv的存在和相关信息。
    在这里插入图片描述
    2 将该pv的回收策略从Retain 修改为Delete。
    在这里插入图片描述
    3 再次查找该pv,发现已经找不到。
    在这里插入图片描述
    4 查看nfs服务器上还有相关的文件夹,发现没有删除。
    在这里插入图片描述


    如需转载,请注明本文的出处:农民工老王的CSDN博客https://blog.csdn.net/monarch91 。

  • 相关阅读:
    经典网络解析(三)GoogleNet | Inception块,1*1卷积核,辅助分类器 整体结构代码
    Java集合-ArrayList源码分析
    如何使用分治算法的思想,分治技巧详解
    java NIO
    某小厂面试题
    2022杭电多校第二场题解
    海思3559开发常识储备:相关名词全解
    ⑦【MySQL】什么是约束?如何使用约束条件?主键、自增、外键、非空....
    item_search - 根据关键词获取义乌购商品列表
    第18章 SpringCloud生态(二)
  • 原文地址:https://blog.csdn.net/monarch91/article/details/125543890