无法正确删除cStor卷副本

时间:2019-01-30 08:07:20

标签: openebs

我用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这样的外观无法成功删除。它说删除成功,但仍然存在

1 个答案:

答案 0 :(得分:1)

OpenEBS文档中的“卸载”部分中提到了正确删除OpenEBS的正确方法。

建议的步骤是:

删除所有已创建的OpenEBS PVC。您可以使用以下命令检查PVC的状态

kubectl get pvc

应该没有任何OpenEBS PVC条目。

删除所有SPC(如果使用cStor存储引擎)

kubectl get spc -n openebs

不应包含任何OpenEBS SPC条目。

确保没有卷或池Pod在终止状态下挂起。您可以使用以下命令检查Pods的运行状态。

kubectl get pods -n <openebs namespace>

通过helm清除或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