持久卷pv的回收策略以及使用

回收持久卷问题:

1.创建pv
2.创建pvc申明绑定pv
3.删除pvc
4.重新apply pvc.yaml文件
kubectl get pvc 会发现pvc状态处于peding

原因:

持久卷回收策略默认为: Retain ,确保在创建持久卷之后将其持久化,让k8s可以再持久卷从持久卷声明中释放后仍然能保留他的卷和数据内容

持久卷策略:

Retain:PV的默认回收策略,删除pv后,挂载卷的数据会保留。可以通过kubectl get pv看到

Recycle:删除卷的内容并使卷可用于再次声明。通过这种方式,持久卷可以被不同的持久卷声明和pod反复使用。但是删除pv以后,挂载卷的数据会被删除掉。

Delete:删除底层存储


解决方法:

手动回收持久卷:
PV策略处于Retain时,将pvc绑定的相关的pv手动删除掉,然后重新创建pv、pvc


自动回收持久卷:
根据自身使用场景去修改持久卷回收策略,
例如:kubectl patch pv your-pvname -p '{"spec":{"persistentVolumeReclaimPolicy":"Recycle"}}
然后删除pvc,等pv的策略状态变为了Recycle,再重新创建pvc

原文地址:https://www.cnblogs.com/byfboke/p/14116590.html