无法正确删除 cStor 卷副本
Unable to delete cStor volume replica properly
我确实 ctrl-c 终止了 kubectl delete -f openebs-operator.yml 因为当 openebs 已经是空的时候它肯定会挂起。没有意识到后台作业仍然是 运行。
get this message in kube-apiserver log:
E0112 18:10:53.877564 999 crd_finalizer.go:275] cstorvolumereplicas.openebs.io failed with: timed out waiting for the condition
看来cstorvolumereplicas.openebs.io无法删除成功。提示删除成功但还是存在
在卸载部分的 OpenEBS 文档中提到了在 OpenEBS 上正常删除的正确方法。
推荐的步骤是:
删除所有创建的OpenEBS PVC。您可以使用以下命令检查 PVC 的状态
kubectl get pvc
不应该有任何 OpenEBS PVC 条目。
删除所有 SPC(如果是 cStor 存储引擎)
kubectl get spc -n openebs
不应该有任何 OpenEBS SPC 条目。
确保没有卷或池 pods 处于终止状态。您可以使用以下命令检查 Pods 的 运行ning 状态。
kubectl get pods -n <openebs namespace>
通过 helm purge 或 kubectl delete ns openebs 删除 OpenEBS 命名空间。
卸载 OpenEBS 不会自动删除创建的 CRD。如果您想完全删除 CRD 和关联的对象,运行 以下命令:
kubectl delete crd castemplates.openebs.io
kubectl delete crd cstorpools.openebs.io
kubectl delete crd cstorvolumereplicas.openebs.io
kubectl delete crd cstorvolumes.openebs.io
kubectl delete crd runtasks.openebs.io
kubectl delete crd storagepoolclaims.openebs.io
kubectl delete crd storagepools.openebs.io
kubectl delete crd volumesnapshotdatas.volumesnapshot.external-storage.k8s.io
kubectl delete crd volumesnapshots.volumesnapshot.external-storage.k8s.io
作为删除 Jiva 卷的一部分,OpenEBS 启动清理作业以清除节点中的数据。需要使用以下命令清除已完成的作业。
kubectl delete jobs -l openebs.io/cas-type=jiva -n <namespace>
有时,cStor 卷可能不会被删除。以下解决方法将解决此问题,请执行以下操作:
kubectl edit cvr -n openebs
然后从 CVR 中删除终结器
需要删除以下条目
finalizers:
- cstorvolumereplica.openebs.io/finalizer
我确实 ctrl-c 终止了 kubectl delete -f openebs-operator.yml 因为当 openebs 已经是空的时候它肯定会挂起。没有意识到后台作业仍然是 运行。
get this message in kube-apiserver log:
E0112 18:10:53.877564 999 crd_finalizer.go:275] cstorvolumereplicas.openebs.io failed with: timed out waiting for the condition
看来cstorvolumereplicas.openebs.io无法删除成功。提示删除成功但还是存在
在卸载部分的 OpenEBS 文档中提到了在 OpenEBS 上正常删除的正确方法。
推荐的步骤是:
删除所有创建的OpenEBS PVC。您可以使用以下命令检查 PVC 的状态
kubectl get pvc
不应该有任何 OpenEBS PVC 条目。
删除所有 SPC(如果是 cStor 存储引擎)
kubectl get spc -n openebs
不应该有任何 OpenEBS SPC 条目。
确保没有卷或池 pods 处于终止状态。您可以使用以下命令检查 Pods 的 运行ning 状态。
kubectl get pods -n <openebs namespace>
通过 helm purge 或 kubectl delete ns openebs 删除 OpenEBS 命名空间。
卸载 OpenEBS 不会自动删除创建的 CRD。如果您想完全删除 CRD 和关联的对象,运行 以下命令:
kubectl delete crd castemplates.openebs.io
kubectl delete crd cstorpools.openebs.io
kubectl delete crd cstorvolumereplicas.openebs.io
kubectl delete crd cstorvolumes.openebs.io
kubectl delete crd runtasks.openebs.io
kubectl delete crd storagepoolclaims.openebs.io
kubectl delete crd storagepools.openebs.io
kubectl delete crd volumesnapshotdatas.volumesnapshot.external-storage.k8s.io
kubectl delete crd volumesnapshots.volumesnapshot.external-storage.k8s.io
作为删除 Jiva 卷的一部分,OpenEBS 启动清理作业以清除节点中的数据。需要使用以下命令清除已完成的作业。
kubectl delete jobs -l openebs.io/cas-type=jiva -n <namespace>
有时,cStor 卷可能不会被删除。以下解决方法将解决此问题,请执行以下操作:
kubectl edit cvr -n openebs
然后从 CVR 中删除终结器 需要删除以下条目
finalizers:
- cstorvolumereplica.openebs.io/finalizer