发行注记


Migration Toolkit for Virtualization 2.8

版本 2.8

Red Hat Modernization and Migration Documentation Team

摘要

本文档描述了 Migration Toolkit for Virtualization 2.8 的新功能、已知问题和已解决的问题。

使开源包含更多

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。我们从这四个术语开始:master、slave、黑名单和白名单。由于此项工作十分艰巨,这些更改将在即将推出的几个发行版本中逐步实施。详情请查看 CTO Chris Wright 的信息

第 1 章 Migration Toolkit for Virtualization 2.8

本发行注记描述了技术变化、新功能和增强、已知问题以及解决的问题。

1.1. 技术变化

Migration Toolkit for Virtualization (MTV) 2.8 有以下技术更改:

使用温迁移中的调度程序优化来缩短计划持续时间

当您同时启动多个 warm 或 remote 迁移计划时,调度程序会被优化,以在当前计划中的较小的磁盘传输后调度待处理的迁移计划。此调度程序优化可以更快地进行温迁移。(MTV-1574)

MTV 支持使用共享磁盘优化的 VMware 虚拟机的迁移

MTV 检测迁移计划中的多个 VMware 虚拟机(VM)使用的共享磁盘,并提供一次性迁移共享磁盘的选项。您可以使用 migrateSharedDisks plan 属性添加共享磁盘以及虚拟机。当您迁移使用相同共享磁盘的其他虚拟机时,您可以在新的迁移计划中将 migrateSharedDisks plan 属性配置为 false

使用以下操作系统创建的虚拟机支持共享磁盘迁移:

  • Windows
  • Linux (仅限块设备)

(MTV-1963)

1.2. 新功能及功能增强

Migration Toolkit for Virtualization (MTV) 2.8 引入了以下功能和增强:

  • 在 MTV 2.8.0 中,您可以在 VMware 虚拟机的迁移计划中为以下属性提供自定义名称:

    • 用于在目标虚拟机中生成 PVC 名称的持久性卷声明(PVC)名称模板。
    • 用于生成目标虚拟机的卷接口名称模板。
    • 用于生成目标虚拟机的网络接口名称的网络名称模板。
  • 在 MTV 2.8.0 中,虚拟机名称可以包含句点,如 RFC-1123 所述。这可让您在迁移后在虚拟机名称中使用完全限定域名。
  • 仅 VMware 和 OVA:在 MTV 2.8.1 中,您可以使用 CLI 为迁移指定目标虚拟机的名称。您输入的名称必须是唯一的,并且它也必须是有效的 Kubernetes 子域。否则,迁移会自动失败。
  • 只使用 CLI 进行迁移:在 MTV 2.8.1 中,您可以在创建迁移计划时避免映射网络。
  • 仅 VMware:默认情况下,MTV 在 PVC 名称中添加一个或多个随机生成的字母数字字符,以确保所有 PVC 都有唯一的名称。在 MTV 2.8.2 中,您可以指示 MTV 不添加这样的后缀。但是,如果您选择这个选项,则生成的 PVC 名称可能不是唯一的,这可能会导致迁移失败。

1.3. 已解决的问题

Migration Toolkit for Virtualization (MTV) 2.8 有以下已解决的问题:

1.3.1. 解决的问题 2.8.7

MTV 使用自己的副本覆盖 firstboot.bat

在以前的 MTV 版本中,MTV 覆盖了 Windows 中的 firstboot.bat 脚本。因此,用户体验会被降级。在这个版本中,冗余的 firstboot 脚本不再被覆盖。(MTV-3218)

1.3.2. 解决的问题 2.8.6

在首次启动上安装驱动程序有时会失败,并显示 PnP 服务不可用

在早期版本的 MTV 中,插件和 Play (PnP)服务不可用会导致 virtio 驱动程序安装失败,同时引导运行 Windows 的客户虚拟机。因此,用户会出现客户虚拟机的引导失败。在这个版本中,驱动程序软件包导入问题已解决,允许使用 PnP 服务成功安装驱动程序。现在,用户可以启动客户虚拟机。(MTV-3042)

1.3.3. 已解决的问题 2.8.5

迁移后,Windows Server 2008 R2 VMware 虚拟机的 IP 地址

仅 VMware:在早期版本的 MTV 中,Windows Server 2008 R2 VMware 虚拟机的 IP 地址不包括在迁移数据中。这个问题已在 MTV 2.8.5 中解决,方法是在用于迁移的 virt-v2v 容器中打包相关的 virtio-win ISO。(MTV-1700)

1.3.4. 解决的问题 2.8.4

在 Plan 详情页面上的搜索功能中没有包括大写字母的虚拟机

在早期版本的 MTV 中,Plans 详情页面 的搜索功能没有返回包含大写字母的虚拟机名称。这个问题已在 MTV 2.8.4 中解决。(MTV-2348)

1.3.5. 解决的问题 2.8.3

使用 PVC 模板命名的 VMware 磁盘没有正确排序

在早期版本的 MTV 中,使用 PVC 模板生成的名称的 VMware 磁盘没有使用与 VM Builder 相同的方法进行排序。这个问题已在 MTV 2.8.3 中解决。(MTV-2303)

迁移后 hook 不运行

在 MTV 的早期版本中,迁移后 hook 无法挂载 ConfigMap API 对象。因此,迁移后 hook 没有运行。这个问题已在 MTV 2.8.3 中解决。(MTV-2421)

1.3.6. 已解决的问题 2.8.2

当使用自定义名称模板时,MTV 不会在 PVC 名称后添加分隔符

在早期版本的 MTV 中,当使用自定义 PVC 模板时,PVC 的名称会紧接 MTV 生成的随机字母数字字符,以确保 PVC 名称是唯一的。因此,很难区分生成的模板的名称和随机字符的名称。在 MTV 2.8.2 中解决了在 MTV 2.8.2 中,在 MTV 中添加连字符(-)作为模板生成的名称和 MTV 添加的随机字符之间的分隔符。(MTV-2257)

Windows 虚拟机的静态路由网关作为默认网关传递

在早期版本的 MTV 中,Windows 虚拟机(VM)的静态路由网关在迁移过程中作为默认网关传递,而不是实际默认网关。这会导致虚拟机配置不正确。这个问题已在 MTV 2.8.2 中解决。(MTV-2408)

MTV 不会列出属于 vApp 的任何虚拟机

在早期版本的 MTV 中,作为 VMware vApp 一部分的任何虚拟机都不会被列出。这个问题已在 MTV 2.8.2 中解决。(MTV-1153)

1.3.7. 已解决的问题 2.8.1

无法迁移具有相互排斥的 spec 值的虚拟机,目标虚拟机无法迁移

在早期版本的 MTV 中,虚拟机可能将 specRunning 作为源虚拟机,并将 specrunStrategy 作为目标虚拟机。这会导致迁移失败,因为 RunningrunStrategy 是互斥的。这个问题已在 MTV 2.8.1 中解决。(MTV-2092)

MTV 的代码库包含参数的已弃用值

在早期版本的 MTV 中,代码库包含已弃用的值 vm.Spec.Running,这会导致一些迁移失败。这个问题已在 MTV 2.8.1 中解决。(MTV-2105)

如果用户提供的名称太长,则使用自定义模板迁移会失败

在早期版本的 MTV 中,如果用户提供的、超过 63 个字符,则使用自定义模板的迁移会失败。这个问题已在 MTV 2.8.1 中解决。现在,MTV 会自动截断太长的名称。(MTV-2244)

用户提供的模板名称不会根据 RFC DNS1123 标准进行验证

在早期版本的 MTV 中,用户提供的模板名称不会根据 RFC DNS1123 标准进行验证。这会导致使用不符合 RFC DNS1123 的模板名称迁移虚拟机失败。这个问题已在 MTV 2.8.1 中解决。(MTV-2249)

取消虚拟机的迁移会导致 Plan 控制器永久循环

在早期版本的 MTV 中,如果虚拟机迁移(VM)被取消,则 Plan 控制器的调度程序会无限期重新调度它以迁移。这个问题已在 MTV 2.8.1 中解决。(MTV-2287)

MTV 无法迁移具有多个句点的模板名称的虚拟机

在早期版本的 MTV 中,名称包含多个句点(如 vm...)的虚拟机无法迁移,因为它的名称不符合应用程序和支持协议 RFC DNS1123。这个问题已在 MTV 2.8.1 中解决。现在,MTV 会自动将虚拟机名称中的多个句点改为一个句点,使其与 RFC DNS1123 兼容。(MTV-2308)

UI 为包含句点的虚拟机名称显示不正确的 "Invalid VM Name" 信息

在早期版本的 MTV 中,UI 显示一个包含句点的虚拟机名称的 "Invalid VM Name" 信息,即使 MTV 支持此类名称。这个问题已在 MTV 2.8.1 中解决。(MTV-2309)

1.3.8. 解决的问题 2.8.0

MTV 不保留来自不同子网的 NIC 的网关 IP 地址

在早期的 MTV 版本中,如果 IP 地址超出网络接口子网范围,则在迁移后不会复制虚拟机的网关 IP 地址。即使启用了 Preserve 静态 IP 设置,也会出现这个问题。这个问题已在 MTV 2.8.0 中解决。(MTV-2018)

MTV 在没有静态 IP 地址的虚拟机的迁移计划中显示错误

在早期版本的 MTV 中,对于启用了 Preserve 静态 IP 的迁移计划,如果没有为客户虚拟机配置静态 IP 地址,则 MTV 会显示错误消息。这个问题已在 MTV 2.8.0 中解决。(MTV-1458)

在迁移使用多个磁盘时,磁盘计数器不会更新进度

在早期版本的 MTV 中,当迁移有多个磁盘的虚拟机时,Disk Counter 不会显示磁盘传输的实时进度。这个问题已在 MTV 2.8.0 中解决。(MTV-1718)

在冷迁移前,带有共享磁盘的虚拟机的迁移计划错误不完整

在早期版本的 MTV 中,带有共享磁盘虚拟机的迁移计划会显示一个错误,在冷迁移前没有列出要关闭的所有虚拟机。这个问题已在 MTV 2.8.0 中解决。(MTV-2206)

在取消计划中的 VMware VM 后 MTV 运行迁移计划

在早期版本的 MTV 中,在多个 VMware 虚拟机的温迁移过程中,在计划中取消虚拟机后 MTV 会继续运行迁移计划。初始计划在通过第二个迁移计划成功迁移后运行。这个问题已在 MTV 2.8.0 中解决。(MTV-1796)

对于具有手动 MAC 地址配置的虚拟机,不会保留静态 IP 地址

在早期版本的 MTV 中,如果您为虚拟机的虚拟网络适配器配置了大写的 MAC 地址,则 VMware 虚拟机的静态 IP 地址不会被保留。这个问题会影响启用了 Preserve 静态 IP 设置的迁移,并在 MTV 2.8.0 中解决。(MTV-2285)

1.4. 已知问题

Migration Toolkit for Virtualization (MTV) 2.8 有以下已知问题:

从 vSphere 进行迁移后引导需要旧驱动程序的虚拟机失败

当迁移需要旧驱动程序(如 Windows Server 2008 R2)的虚拟机(VM)时,从 vSphere 迁移到 Red Hat OpenShift 集群,迁移计划会成功,但虚拟机无法引导。这是因为 virt-v2v 不包含传统 Windows 版本所需的 VirtIO 驱动程序。(MTV-3227)

温迁移后,可信平台模块被添加到 Windows Server 2022 虚拟机的 BIOS 中

在温地将 Windows Server 2022 虚拟机从 vSphere 迁移到 OpenShift 集群后,Trusted Platform 模块(TPM)设备会添加到目标虚拟机中,即使 TPM 配置在源 Windows Server 2022 虚拟机的 BIOS 设置中是非持久性。这可防止目标虚拟机启动。(MTV-2049)

不支持具有集群文件系统的 Linux 虚拟机

不支持在共享磁盘中使用集群文件系统的 Linux 客户机虚拟机,因为这些磁盘不会添加到客户机转换过程中。virt-v2v 工具不会更新 fstab 配置文件中的共享磁盘。(MTV-2145)

迁移共享引导磁盘不可用

使用 MTV 迁移共享引导磁盘不可用。(MTV-2201)

VMware 虚拟机上的 anti-virus 软件可能会导致迁移失败

仅 VMware:Inti-virus 软件可能会导致 VMware 迁移失败。在开始迁移前,强烈建议从源虚拟机中删除这些软件。(MTV-2452)

当 MTV 刷新虚拟机页面时,UI 中的用户选择会被清除

当用户尝试从 UI 的虚拟机页面创建迁移计划时,当 MTV 刷新页面时,其选择会被清除。要避免这个问题,请在计划的 Plan 详情页面的 YAML 选项卡中完成 YAML 选项卡来创建计划,或使用 CLI 创建计划。(MTV-2621)

网络配置脚本不适用于 Windows Server 2008 SP2

VMware:网络配置脚本不适用于 Windows Server 2008 SP2 虚拟机。脚本会返回 "missing expression" 错误。(MTV-2664)

第 2 章 发行注记附加组件

2.1. MTV 所选软件包

以下列出的软件包来自 virt-v2v 客户机转换 pod:

Expand
表 2.1. 所选 MTV 软件包

软件包概述

MTV 2.8.0

MTV 2.8.1

MTV 2.8.2

MTV 2.8.3

MTV 2.8.4

MTV 2.8.5

定义简单 Red Hat Enterprise Linux 系统的框架软件包

basesystem-11-13.el9.noarch

basesystem-11-13.el9.noarch

basesystem-11-13.el9.noarch

basesystem-11-13.el9.noarch

basesystem-11-13.el9.noarch

basesystem-11-13.el9.noarch

与核心内核匹配的核心内核模块

kernel-modules-core-5.14.0-503.23.1.el9_5.x86_64

kernel-modules-core-5.14.0-503.35.1.el9_5.x86_64

kernel-modules-core-5.14.0-503.38.1.el9_5.x86_64

kernel-modules-core-5.14.0-503.40.1.el9_5.x86_64

kernel-modules-core-5.14.0-503.40.1.el9_5.x86_64

kernel-modules-core-5.14.0-570.18.1.el9_6.x86_64

Linux 内核

kernel-core-5.14.0-503.23.1.el9_5.x86_64

kernel-core-5.14.0-503.35.1.el9_5.x86_64

kernel-core-5.14.0-503.38.1.el9_5.x86_64

kernel-core-5.14.0-503.40.1.el9_5.x86_64

kernel-core-5.14.0-503.40.1.el9_5.x86_64

kernel-core-5.14.0-570.18.1.el9_6.x86_64

访问和修改虚拟机磁盘镜像

libguestfs-1.50.2-1.el9.x86_64

libguestfs-1.50.2-2.el9_5.x86_64

libguestfs-1.50.2-2.el9_5.x86_64

libguestfs-1.50.2-4.el9_5.x86_64

libguestfs-1.50.2-4.el9_5.x86_64

libguestfs-1.54.0-8.el9_6.x86_64

libvirt 库的客户端侧工具

libvirt-client-10.5.0-7.4.el9_5.x86_64

libvirt-client-10.5.0-7.5.el9_5.x86_64

libvirt-client-10.5.0-7.5.el9_5.x86_64

libvirt-client-10.5.0-7.5.el9_5.x86_64

libvirt-client-10.5.0-7.5.el9_5.x86_64

libvirt-client-10.10.0-7.3.el9_6.x86_64

libvirt 库

libvirt-libs-10.5.0-7.4.el9_5.x86_64

libvirt-libs-10.5.0-7.5.el9_5.x86_64

libvirt-libs-10.5.0-7.5.el9_5.x86_64

libvirt-libs-10.5.0-7.5.el9_5.x86_64

libvirt-libs-10.5.0-7.5.el9_5.x86_64

libvirt-libs-10.10.0-7.3.el9_6.x86_64

libvirtd 守护进程的 QEMU 驱动程序插件

libvirt-daemon-driver-qemu-10.5.0-7.4.el9_5.x86_64

libvirt-daemon-driver-qemu-10.5.0-7.5.el9_5.x86_64

libvirt-daemon-driver-qemu-10.5.0-7.5.el9_5.x86_64

libvirt-daemon-driver-qemu-10.5.0-7.5.el9_5.x86_64

libvirt-daemon-driver-qemu-10.5.0-7.5.el9_5.x86_64

libvirt-daemon-driver-qemu-10.10.0-7.3.el9_6.x86_64

NBD 服务器

nbdkit-1.38.3-1.el9.x86_64

nbdkit-1.38.3-1.el9.x86_64

nbdkit-1.38.3-1.el9.x86_64

nbdkit-1.38.3-2.el9_5.x86_64

nbdkit-1.38.3-2.el9_5.x86_64

nbdkit-1.38.5-2.el9.x86_64

nbdkit 的基本过滤器

nbdkit-basic-filters-1.38.3-1.el9.x86_64

nbdkit-basic-filters-1.38.3-1.el9.x86_64

nbdkit-basic-filters-1.38.3-1.el9.x86_64

nbdkit-basic-filters-1.38.3-2.el9_5.x86_64

nbdkit-basic-filters-1.38.3-2.el9_5.x86_64

nbdkit-basic-filters-1.38.5-2.el9.x86_64

nbdkit 的基本插件

nbdkit-basic-plugins-1.38.3-1.el9.x86_64

nbdkit-basic-plugins-1.38.3-1.el9.x86_64

nbdkit-basic-plugins-1.38.3-1.el9.x86_64

nbdkit-basic-plugins-1.38.3-2.el9_5.x86_64

nbdkit-basic-plugins-1.38.3-2.el9_5.x86_64

nbdkit-basic-plugins-1.38.5-2.el9.x86_64

nbdkit 的 HTTP/FTP (cURL)插件

nbdkit-curl-plugin-1.38.3-1.el9.x86_64

nbdkit-curl-plugin-1.38.3-1.el9.x86_64

nbdkit-curl-plugin-1.38.3-1.el9.x86_64

nbdkit-curl-plugin-1.38.3-2.el9_5.x86_64

nbdkit-curl-plugin-1.38.3-2.el9_5.x86_64

nbdkit-curl-plugin-1.38.5-2.el9.x86_64

用于 nbdkit 的 NBD 代理/转发插件

nbdkit-nbd-plugin-1.38.3-1.el9.x86_64

nbdkit-nbd-plugin-1.38.3-1.el9.x86_64

nbdkit-nbd-plugin-1.38.3-1.el9.x86_64

nbdkit-nbd-plugin-1.38.3-2.el9_5.x86_64

nbdkit-nbd-plugin-1.38.3-2.el9_5.x86_64

nbdkit-nbd-plugin-1.38.5-2.el9.x86_64

用于 nbdkit 的 Python 3 插件

nbdkit-python-plugin-1.38.3-1.el9.x86_64

nbdkit-python-plugin-1.38.3-1.el9.x86_64

nbdkit-python-plugin-1.38.3-1.el9.x86_64

nbdkit-python-plugin-1.38.3-2.el9_5.x86_64

nbdkit-python-plugin-1.38.3-2.el9_5.x86_64

nbdkit-python-plugin-1.38.5-2.el9.x86_64

nbdkit 服务器

nbdkit-server-1.38.3-1.el9.x86_64

nbdkit-server-1.38.3-1.el9.x86_64

nbdkit-server-1.38.3-1.el9.x86_64

nbdkit-server-1.38.3-2.el9_5.x86_64

nbdkit-server-1.38.3-2.el9_5.x86_64

nbdkit-server-1.38.5-2.el9.x86_64

nbdkit 的 SSH 插件

nbdkit-ssh-plugin-1.38.3-1.el9.x86_64

nbdkit-ssh-plugin-1.38.3-1.el9.x86_64

nbdkit-ssh-plugin-1.38.3-1.el9.x86_64

nbdkit-ssh-plugin-1.38.3-2.el9_5.x86_64

nbdkit-ssh-plugin-1.38.3-2.el9_5.x86_64

nbdkit-ssh-plugin-1.38.5-2.el9.x86_64

用于 nbdkit 的 VMware VDDK 插件

nbdkit-vddk-plugin-1.38.3-1.el9.x86_64

nbdkit-vddk-plugin-1.38.3-1.el9.x86_64

nbdkit-vddk-plugin-1.38.3-1.el9.x86_64

nbdkit-vddk-plugin-1.38.3-2.el9_5.x86_64

nbdkit-vddk-plugin-1.38.3-2.el9_5.x86_64

nbdkit-vddk-plugin-1.38.5-2.el9.x86_64

用于操作磁盘镜像的 QEMU 命令行工具

qemu-img-9.0.0-10.el9_5.2.x86_64

qemu-img-9.0.0-10.el9_5.2.x86_64

qemu-img-9.0.0-10.el9_5.2.x86_64

qemu-img-9.0.0-10.el9_5.3.x86_64

qemu-img-9.0.0-10.el9_5.3.x86_64

qemu-img-9.1.0-15.el9_6.4.x86_64

所有 QEMU 目标所需的 QEMU 常用文件

qemu-kvm-common-9.0.0-10.el9_5.2.x86_64

qemu-kvm-common-9.0.0-10.el9_5.2.x86_64

qemu-kvm-common-9.0.0-10.el9_5.2.x86_64

qemu-kvm-common-9.0.0-10.el9_5.3.x86_64

qemu-kvm-common-9.0.0-10.el9_5.3.x86_64

qemu-kvm-common-9.1.0-15.el9_6.4.x86_64

QEMU KVM 核心组件

qemu-kvm-core-9.0.0-10.el9_5.2.x86_64

qemu-kvm-core-9.0.0-10.el9_5.2.x86_64

qemu-kvm-core-9.0.0-10.el9_5.2.x86_64

qemu-kvm-core-9.0.0-10.el9_5.3.x86_64

qemu-kvm-core-9.0.0-10.el9_5.3.x86_64

qemu-kvm-core-9.1.0-15.el9_6.4.x86_64

转换虚拟机以在 KVM 上运行

virt-v2v-2.5.6-7.el9_5.x86_64

virt-v2v-2.5.6-9.el9_5.x86_64

virt-v2v-2.5.6-9.el9_5.x86_64

virt-v2v-2.5.6-10.el9_5.x86_64

virt-v2v-2.5.6-10.el9_5.x86_64

virt-v2v-2.7.1-8.el9_6.x86_64

法律通告

Copyright © 2025 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat