8. 删除无法终止的 PV
8.1. 问题
在 Kubernetes 集群中删除一个 PV 时,PV 一直处于 Terminating 无法删除。
8.2. 分析
通常是因为 PV 的 Finalizer 阻止了 PV 被删除。使用以下命令查看 PV 的 Finalizer:
$ kubectl get pv pv-xxxx -ojsonpath --template {.metadata.finalizers} | jq
[
"external-provisioner.volume.kubernetes.io/finalizer",
"kubernetes.io/pv-protection"
]
8.3. 解决方案
删除 PV 的 Finalizer:
$ kubectl patch pv pv-xxxx -p '{"metadata":{"finalizers":null}}'
persistentvolume/pvc-a7abf83d-baef-4aa6-9418-3beed827c5d6 patched