第 3 章 将从 ML2/OVS 迁移到 ML2/OVN


如果您使用 ovn-migration.sh 备份 来备份控制器节点,如准备环境 迁移到 OVN 机制驱动程序 中所述, 您也可以在从 ML2/OVS 升级到 ML2/OVN 前备份 overcloud 模板,您可以通过执行这些基本步骤来恢复迁移。

  1. 恢复控制器节点。
  2. 运行 restore.yaml 以删除 ML2/OVN 工件。
  3. 使用您备份的 ML2/OVS 模板重新部署 overcloud。
注意

恢复迁移并恢复计算节点后,您可能会遇到大量网络停机时间 20 分钟或更长时间。

警告

ML2/OVS 到 ML2/OVN 迁移以可能无法完全解析的方式改变环境。

如果您遵循正确的备份步骤并恢复指令,则可以恢复失败或中断的迁移,但恢复的 OVS 环境可能会改变原始的 OVS 环境。例如,如果您迁移到 OVN 机制驱动程序,请将实例迁移到另一个 Compute 节点,然后恢复 OVN 迁移,实例将位于原始 Compute 节点上。另外,恢复操作中断与 dataplane 的连接。

在生产环境中迁移之前,请主动提交支持问题单。然后,与您的红帽大客户经理或红帽全局专业服务合作,在符合您生产环境的暂存环境中创建备份和迁移计划并测试迁移。

如果您选择为潜在的迁移恢复准备备份,您还应在暂存环境中测试迁移恢复。

迁移恢复不是反向迁移。它旨在仅在迁移失败时作为最后的手段。如果迁移通过验证,且稍后识别迁移后环境中的操作问题,请在迁移后以错误的形式解决这些问题,

3.1. 恢复控制器节点以恢复 ML2/OVN 迁移

如果您使用 ovn-migration.sh 备份 来在迁移前备份控制器节点,您可以使用 Relax 和 Recover 工具(ReaR)在迁移后失败时恢复它们。

前提条件

  • 您已为失败的迁移提交了支持问题单,并收到红帽的说明。
  • 在迁移前,您使用 ovn-migration.sh 备份 来备份控制器节点。
  • 您可以访问备份节点。
  • 您备份了重新部署 ML2/OVS overcloud 所需的 overcloud 模板。

流程

  1. 停止与 control plane API 交互的所有操作,如创建新网络、子网或路由器,或在计算节点之间迁移虚拟机实例。
  2. 关闭每个 control plane 节点。在继续操作前,请确保 control plane 节点已完全关闭。
  3. 使用对应的备份 ISO 镜像引导每个 control plane 节点。
  4. 当每个 control plane 节点上显示 Relax-and-Recover 引导菜单时,选择 Recover <control_plane_node>。将 <control_plane_node > 替换为对应的 control plane 节点的名称。

    注意

    如果您的系统使用 UEFI,请选择 Relax-and-Recover (no Secure Boot) 选项。

  5. 在每个 control plane 节点上,以 root 用户身份登录并恢复节点:

    这时会显示以下信息:

    Welcome to Relax-and-Recover. Run "rear recover" to restore your system!
    RESCUE <control_plane_node>:~ # rear recover
    Copy to Clipboard Toggle word wrap

    当 control plane 节点恢复过程完成时,控制台会显示以下信息:

    Finished recovering your system
    Exiting rear recover
    Running exit tasks
    Copy to Clipboard Toggle word wrap
  6. 关闭该节点:

    RESCUE <control_plane_node>:~ #  poweroff
    Copy to Clipboard Toggle word wrap
  7. 将引导序列设置为正常引导设备。在引导时,节点会恢复之前的状态。
  8. 为确保服务正确运行,请检查 pacemaker 的状态。以 root 用户身份登录 Controller 节点,然后输入以下命令:

    # pcs status
    Copy to Clipboard Toggle word wrap
  9. 如果 ovn-router 显示为任何环境文件或模板中 NeutronPluginExtensions 的值,请将 ovn- router 替换为路由器。参数可能出现在多个文件中。例如,一个这样的文件是 tripleo-heat templates/environments/services/neutron-ovn-dvr-ha.yaml:

    parameter_defaults:
    NeutronServicePlugins: "router,trunk,qos,placement"
    Copy to Clipboard Toggle word wrap
  10. 使用 恢复 参数运行迁移脚本:

    $ ovn_migration.sh revert
    Copy to Clipboard Toggle word wrap

故障排除

  • 运行以下命令,清除 pcs status 显示的资源警报:
 # pcs resource clean
Copy to Clipboard Toggle word wrap
  • 运行以下命令,清除 pcs status 显示的 STONITH 隔离操作错误:
# pcs resource clean
# pcs stonith history cleanup
Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat