发行注记
版本 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 (仅限块设备)
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 中,虚拟机可能将 spec 值 Running 作为源虚拟机,并将 spec 值 runStrategy 作为目标虚拟机。这会导致迁移失败,因为 Running 和 runStrategy 是互斥的。这个问题已在 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:
| 软件包概述 | 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 |