2.4. 将 ML2 机制驱动程序从 OVS 迁移到 OVN
ovn-migration 脚本执行与 ML2 机制驱动程序从 OVS 到 OVN 进行原位升级相关的环境设置、迁移和清理任务。
前提条件
- 您已完成了 准备将 ML2 机制驱动程序从 OVS 迁移到 OVN的步骤
- 如果您的原始部署使用 VXLAN 或 GRE,您也完成了 调整 MTU 中的步骤,以便从 OVS 机制驱动程序迁移到 OVN 机制驱动程序。
- 您还通过 准备从 OVS 机制驱动程序迁移到 OVN 机制驱动程序的容器镜像, 完成所有必要的迁移步骤。
流程
停止与网络服务(neutron) API 交互的所有操作,如创建新网络、子网或路由器,或在计算节点之间迁移虚拟机实例。
在迁移过程中与网络 API 交互可能会导致未定义的行为。您可以在完成迁移后重启 API 操作。
运行
ovn_migration.sh start-migration以开始迁移过程。tee命令创建脚本输出的副本,以进行故障排除。ovn_migration.sh start-migration | sudo tee -a /var/log/ovn_migration_output.txt
$ ovn_migration.sh start-migration | sudo tee -a /var/log/ovn_migration_output.txtCopy to Clipboard Copied! Toggle word wrap Toggle overflow
结果
该脚本执行以下操作:
- 创建预迁移资源(网络和虚拟机)以验证现有部署和最终迁移。
- 更新 overcloud 堆栈,以部署 OVN,同时使用临时网桥 br-migration 而不是 br-int 引用实施服务。临时网桥有助于限制迁移期间停机。
- 通过运行 neutron-ovn-db-sync-util 来生成 OVN 北向数据库。实用程序检查 Neutron 数据库,以在 OVN 北向数据库中创建等效的资源。
- 将现有资源从 br-int 克隆到 br-migration,以允许 ovn 在 br-migration 上查找相同的资源 UUIDS。
- 将 ovn-controller 重新分配到 br-int,而不是 br-migration。
删除 ML2/OVN 不使用的节点资源,包括以下内容:
- 清理网络命名空间(fip、snat、qdhcp)。
-
删除
br-int上的任何不必要的补丁端口。 -
删除
br-tun和br-migrationovs 网桥。 -
从
br-int中删除以qr-、ha-和qg-开头的端口(使用 neutron-netns-cleanup)。
- 通过网络服务 API 从数据库中删除网络服务(neutron)代理和网络服务 HA 内部网络。
- 验证迁移前资源的连接。
- 删除迁移前资源。
- 创建迁移后资源。
- 验证迁移后资源的连接性。
- 清理迁移后资源。
-
重新运行部署工具,以在
br-int上更新 OVN。