k8s无法删除pv,pvc的问题及解决
作者:小邋遢2.0
在Kubernetes中删除PVC时,若未指定名称或使用错误参数,会报错"no name was specified",解决方法为:使用`kubectl delete pvc <pvc-name>`明确指定PVC名称,或通过`kubectl delete pvc --all`删除所有PVC,同时确保正确指定命名空间(-n)
问题
在k8s里面创建了pv,pvc删除时报错:
error: resource(s) were provided, but no name was specified

解决
正确的删除顺序
- 1.先删除pod
- 2.再删除pv
- 3.在删除pvc
删除pv,pvc命令
kubectl patch pv pvname -p '{"metadata":{"finalizers":null}}'
kubectl patch pvc pvcname -p '{"metadata":{"finalizers":null}}'1.停掉pod
[root@master1 pv]# kubectl delete -f nginx-pod.yaml
service "nginx-service" deleted
deployment.apps "nginx-web" deleted
2.解除pv绑定
[root@master1 pv]# kubectl patch pv pv -p '{"metadata":{"finalizers":null}}'
persistentvolume/pv patched
3.解除pvc绑定
[root@master1 pv]# kubectl patch pvc pvc -p '{"metadata":{"finalizers":null}}'
persistentvolumeclaim/pvc patched
4.删除pv,pvc
[root@master1 pv]# kubectl delete pv pv
persistentvolumeclaim "pv" deleted
[root@master1 pv]# kubectl delete pvc pvc
persistentvolumeclaim "pvc" deleted
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
