其他分享
首页 > 其他分享> > K8S集群pvc状态为Terminating恢复

K8S集群pvc状态为Terminating恢复

作者:互联网

一、背景:

公司平台k8s集群,有人误删pvc,由于pod还在使用pvc,所以现在的状态为Terminating。

二、操作恢复:

1、首先调节pv的回收策略为Retain

     pv 的回收策略有三种分别是:
     Retain:PV的默认回收策略,删除pvc后,挂载卷的数据会保留。可以通过kubectl get pv看到
     Recycle:删除卷的内容并使卷可用于再次声明。通过这种方式,持久卷可以被不同的持久卷声明和pod反复使用。但是删除pv以后,挂载卷的数据会被删除掉。
     Delete:删除底层存储。

调节pv的回收策略为Retain,如果是Retain则省略此步:

kubectl edit pv PVNAME

K8S集群pvc状态为Terminating恢复

调节完成后如下图所示:
K8S集群pvc状态为Terminating恢复

2、停止相关pod,当pod停止后,相关pvc会删除;

当前pvc状态
K8S集群pvc状态为Terminating恢复

kubecctl delet pod my-pvpvc-pod

删除成功后,pvc一会也会随着删除

kubectl get pvc 

K8S集群pvc状态为Terminating恢复

3、修改pv,删除以前的绑定信息:

现在pv的状态为:
K8S集群pvc状态为Terminating恢复

kubectl edit pv 

找到红色方框里的内容,并删除,共7行
K8S集群pvc状态为Terminating恢复
删除完成后,保存退出,

4、重新创建pvc,并查看状态,启动pod,查看状态

kubectl apply -f test.yaml
kubectl get pvc 
kubectl get pv

K8S集群pvc状态为Terminating恢复

kubectl apply -f pod.yaml

K8S集群pvc状态为Terminating恢复
至此,pvc恢复完成。

标签:kubectl,pv,删除,get,pvc,Terminating,pod,K8S
来源: https://blog.51cto.com/u_14086194/2718317