【问题标题】:Unable to delete cStor volume replica properly无法正确删除 cStor 卷副本
【发布时间】:2019-01-30 08:07:20
【问题描述】:

我确实 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


    【解决方案1】:

    OpenEBS 文档中卸载部分中提到了在 OpenEBS 上优雅删除的正确方法。

    推荐的步骤是:

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

    kubectl get pvc
    

    不应有任何 OpenEBS PVC 条目。

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

    kubectl get spc -n openebs
    

    不应有任何 OpenEBS SPC 条目。

    确保没有卷或池 pod 处于终止状态。您可以使用以下命令查看 Pod 的运行状态。

    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
    

    【讨论】:

      猜你喜欢
      • 2017-12-31
      • 1970-01-01
      • 2014-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-09
      • 2016-08-25
      相关资源
      最近更新 更多