9.3.3. 手动回滚迁移

您可以通过删除 stage pod 并取消静止应用程序来手动回滚失败的迁移。

如果您成功运行相同的迁移计划,则会自动删除失败迁移中的资源。

注意

在直接卷迁移失败 (DVM) 后,以下资源会保留在迁移的命名空间中:

  • 配置映射(源和目标集群)
  • Secret CR(源和目标集群)
  • Rsync CR(源集群)

这些资源不会影响回滚。您可以手动删除它们。

流程

  1. 删除所有集群中的 stage pod:

    $ oc delete $(oc get pods -l migration.openshift.io/is-stage-pod -n <namespace>) 1
    1
    MigPlan CR 中指定的命名空间。
  2. 通过将副本扩展到其预迁移编号,在源集群中取消静默应用程序:

    $ oc scale deployment <deployment> --replicas=<premigration_replicas>

    Deployment CR 中的 migration.openshift.io/preQuiesceReplicas 注解显示预迁移副本数:

    apiVersion: extensions/v1beta1
    kind: Deployment
    metadata:
      annotations:
        deployment.kubernetes.io/revision: "1"
        migration.openshift.io/preQuiesceReplicas: "1"
  3. 验证应用程序 pod 是否在源集群中运行:

    $ oc get pod -n <namespace>