1.3. 已解决的问题
此发行版本有以下解决的问题:
1.3.1. 解决的问题 2.6.7
在 ifcfg 文件中处理引号不正确
在早期版本的 MTV 中,在接口配置(ifcfg)文件中对单引号和双引号进行不正确的处理存在问题,该文件控制各个网络设备的软件接口。这个问题已在 MTV 2.6.7 中解决,以便覆盖 Red Hat Enterprise Linux、CentOS、Rocky Linux 和类似发行版本中的额外 IP 配置。(MTV-1439)
无法保留基于 netplan 的网络配置
在早期的 MTV 版本中,基于 netplan 的网络配置的保留存在问题。这个问题已在 MTV 2.6.7 中解决,因此当使用 netplan (netplan.io)来为已知的 mac-address 和 ifname
tuples 使用 netplan (netplan.io)时静态 IP 配置会被保留。(MTV-1440)
错误消息写入 udev .rules 文件中
在早期版本的 MTV 中,在 udev .rules 文件中存在一个出错信息的问题。这个问题已在 MTV 2.6.7 中解决,并将静态 IP 持久性脚本添加到 udev 规则文件中。(MTV-1441)
1.3.2. 解决的问题 2.6.6
运行时错误:无效的内存地址或 nil pointer dereference
在早于 MTV 的早期版本中,存在一个 无效的内存地址
或 nil pointer 解引用
的运行时错误,是由 nil 的指针导致的,它试图访问它指向的值。这个问题已在 MTV 2.6.6 中解决。(MTV-1353)
计划到同一节点的所有计划和迁移 pod 会导致节点崩溃
在早期版本的 MTV 中,调度程序可以将所有迁移 pod 放置到单个节点上。当发生这种情况时,节点会耗尽资源。这个问题已在 MTV 2.6.6 中解决。(MTV-1354)
空的 bearer 令牌足以进行身份验证
在早期版本的 MTV 中,在 Forklift Controller 中发现了一个漏洞。 授权标头没有验证,除了确保它使用 bearer 身份验证。如果没有授权标头和 bearer 令牌,则会出现 401
错误。令牌值的存在为请求的信息提供了 200 响应。这个问题已在 MTV 2.6.6 中解决。
如需了解更多详细信息,请参阅 (CVE-2024-8509)。
1.3.3. 解决的问题 2.6.5
在迁移过程中 VMware Linux 接口名称变化
在 MTV 的早期版本中,在将 Rocky Linux 8、CentOS 7.2 及更高版本以及 Ubuntu 22 虚拟机(VM)迁移到 Red Hat OpenShift (OCP)时,修改网络接口的名称,虚拟机的静态 IP 配置无法正常工作。这个问题已针对 Rocky Linux 8 中的静态 IP 解决,Centos 7.2 及更新的版本为 MTV 2.6.5 中的 Ubuntu 22。(MTV-595)
1.3.4. 解决的问题 2.6.4
将 Windows 虚拟机从 RHV 或 VMware 迁移到 OCP 后,磁盘和驱动器处于离线状态
在成功从 RHV 或 VMware 迁移到 Red Hat OpenShift 后,Windows 2022 虚拟机配置了多个磁盘(在迁移前 在线 )是 离线 的。只有 C:\
主磁盘是 在线的。这个问题已针对 MTV 2.6.4 中的基本磁盘解决。(MTV-1299)
如需了解在冷却和从 vSphere 到带有 Ceph RADOS 块设备(RBD)的容器原生虚拟化(CNV)后,使用存储类 ocs-storagecluster-ceph-rbd
,请参阅 (MTV-1344) 的已知问题。
为 Windows 保留 IP 选项不会保留所有设置
在早期版本的 MTV 中,当迁移分配了静态 IP 地址的 Windows 2022 服务器时,并在成功迁移 Windows 后选择 Preserve 静态 IP 选项,同时节点启动并保留 IP 地址,子网掩码、网关和 DNS 服务器不会被保留。这会导致迁移不完整,客户被强制从控制台在本地登录以完全配置网络。这个问题已在 MTV 2.6.4 中解决。(MTV-1286)
在 Windows Server 2022 中首次引导时没有安装 qemu-guest-agent
在使用 MTV 2.6.1 的 Windows 2022 服务器虚拟机迁移成功后,qemu-guest-agent
不会被完全安装。正在创建 Windows Scheduled 任务,但将在以后设置为运行 4 小时,而不是在以后运行预期的 2 分钟。(MTV-1325)
1.3.5. 解决问题 2.6.3
CVE-2024-24788: golang: net
formed DNS 消息可能会导致死循环
在早期版本的 MTV 中,在 Go 编程语言的 stdlib
软件包中发现了一个安全漏洞,这会影响以前版本的 MTV。此漏洞主要威胁了依赖 Go 进行 DNS 查询的面向 Web 的应用程序和服务。这个问题已在 MTV 2.6.3 中解决。
如需了解更多详细信息,请参阅 (CVE-2024-24788)。
迁移调度不会考虑 virt-v2v
按顺序复制磁盘(仅限 vSphere)
在早期版本的 MTV 中,MTV 解释 vSphere 的 controller_max_vm_inflight
设置来调度迁移时存在问题。这个问题已在 MTV 2.6.3 中解决。(MTV-1191)
在更改 ESXi 网络后进行冷迁移(仅限 vSphere)
在早期版本的 MTV 中,如果使用任何网络但默认网络用于磁盘传输,来自带有 ESXi SDK 端点的 vSphere 供应商的冷迁移会失败。这个问题已在 MTV 2.6.3 中解决。(MTV-1180)
ESXi 网络上的温迁移处于 DiskTransfer
状态(仅限 vSphere)
在早期版本的 MTV 中,来自带有 vCenter SDK 端点的 vSphere 供应商的 ESXi 网络进行温迁移处于 DiskTransfer
状态,因为 MTV 无法找到镜像快照。这个问题已在 MTV 2.6.3 中解决。(MTV-1161)
冷迁移后保留 PVC 处于 Lost
状态
在早期版本的 MTV 中,在冷迁移后,还有 Lost
状态而不是被删除,即使创建了它们的迁移计划被存档并删除。调查显示,因为默认情况下,导入程序 pod 在复制后被保留,而不是只在特定情况下被保留。这个问题已在 MTV 2.6.3 中解决。(MTV-1095)
vSphere 中的客户机操作系统可能缺失(仅限 vSphere)
在早期版本的 MTV 中,从 vSphere 导入的一些虚拟机在 OpenShift 中没有映射到 OpenShift 中的模板,而其他虚拟机(具有相同客户机操作系统)已映射到对应的模板。调查表明,因为 vSphere 在收到 VMware 工具的更新后停止报告操作系统。这个问题已在 MTV 2.6.3 中解决,从调查 virt-v2v
对磁盘执行的调查中获取操作系统值。(MTV-1046)
1.3.6. 解决的问题 2.6.2
CVE-2023-45288: Golang net/http, x/net/http2
: 无限数量的 CONTINUATION
帧可能会导致拒绝服务(DoS)攻击
在 Go 编程语言中的 HTTP/2
协议实现中发现了一个安全漏洞,这会影响之前 MTV 版本。在单个流中发送的 CONTINUATION 帧数量没有限制。攻击者可能会利用此漏洞造成拒绝服务(DoS)攻击。这个安全漏洞已在 MTV 2.6.2 中解决。
如需了解更多详细信息,请参阅 (CVE-2023-45288)。
CVE-2024-24785: mtv-api-container
: Golang html/template: 从
可能会破坏模板转义MarshalJSON
方法返回的错误
在 html/template
Golang 标准库软件包中发现了一个安全漏洞,这会影响以前版本的 MTV。 如果来自 MarshalJSON
方法返回的错误包含用户控制的数据,则它们可能会用来破坏 HTML/template 软件包的上下文自动转义行为,以便后续操作将意外内容注入模板。 这个安全漏洞已在 MTV 2.6.2 中解决。
如需了解更多详细信息,请参阅 (CVE-2024-24785)。
CVE-2024-24784: mtv-validation-container
: Golang net/mail
: 注释在显示名称中被错误地处理
net/mail
Golang 标准库软件包中发现了一个安全漏洞,这会影响以前版本的 MTV。ParseAddressList
函数错误地处理注释、文本(括号中的文本)和显示名称。由于这是一个符合地址解析程序的对齐,因此可能会导致使用不同解析器的程序进行不同的信任决策。这个安全漏洞已在 MTV 2.6.2 中解决。
如需了解更多详细信息,请参阅 (CVE-2024-24784)。
CVE-2024-24783: mtv-api-container
: Golang crypto/x509
: 验证带有未知公钥算法的证书上的 panics
在 crypto/x509
Golang 标准库软件包中发现了一个安全漏洞,这会影响以前版本的 MTV。验证包含带有未知公钥算法的证书的证书链会导致 Certificate.Verify
panic。这会影响将 Config.ClientAuth
设置为 VerifyClientCertIfGiven
或 RequireAndVerifyClientCert
的所有 crypto/tls
客户端和服务器。默认行为是 TLS 服务器无法验证客户端证书。这个安全漏洞已在 MTV 2.6.2 中解决。
如需了解更多详细信息,请参阅 (CVE-2024-24783)。
CVE-2023-45290: mtv-api-container
: Golang net/http
内存耗尽在 Request.ParseMultipartForm
net/http
Golang 标准库软件包中发现了一个安全漏洞,这会影响之前版本的 MTV。在解析 多部分
表单时,使用 Request.ParseMultipartForm
明确使用 Request.FormValue
、Request.PostFormValue
或 Request.FormFile
,对解析表单的总大小的限制不会应用到在读取单个表单行时消耗的内存。这允许包含长行的恶意设计输入,从而导致分配大量内存,可能会导致内存耗尽。这个安全漏洞已在 MTV 2.6.2 中解决。
如需了解更多详细信息,请参阅 (CVE-2023-45290)。
当目标存储设置为 WaitForFirstConsumer (WFFC)时,ImageConversion 没有运行
在 MTV 版本中,迁移会失败,因为迁移会停留在 AllocateDisks
阶段。因此,迁移没有进行,PVC 不会被绑定。造成问题的根本原因是,当为 wait-for-first-consumer
设置目标存储时,ImageConversion
没有运行。这个问题已在 MTV 2.6.2 中解决。(MTV-1126)
当使用直接 LUN 导入虚拟机时,forklift-controller panics
在 MTV 的早期版本中,当用户试图导入有直接 LUN 的虚拟机时,forklift-controller
panicked。这个问题已在 MTV 2.6.2 中解决。(MTV-1134)
1.3.7. 解决的问题 2.6.1
具有多个从 vSphere 和 OVA 文件迁移的磁盘的虚拟机不会被完全复制
在 MTV 2.6.0 中,使用从 VMware vSphere 和 OVA 文件复制带有多个磁盘的虚拟机存在问题。迁移似乎成功,但所有磁盘都传送到目标环境中的同一 PV,而其他磁盘为空。在某些情况下,可引导磁盘会被覆盖,因此虚拟机无法引导。在其他情况下,缺少来自其他磁盘的数据。这个问题已在 MTV 2.6.1 中解决。(MTV-1067)
因为超时,将虚拟机从一个 Red Hat OpenShift 集群迁移到另一个集群会失败
在 MTV 2.6.0 中,当将虚拟机的磁盘超过 OpenShift 中导出 API 的时间(TTL)时,从一个 Red Hat OpenShift 集群迁移到另一个 Red Hat OpenShift 集群会失败,这默认设置为 2 小时。通过将导出 API 的默认 TTL 设置为 12 小时,这在 MTV 2.6.1 中解决,这大大减少了导出 API 过期的可能性。另外,您可以根据需要增加或减少 TTL 设置。(MTV-1052)
当在没有数据存储的情况下收到磁盘时,MTV forklift-controller pod 会崩溃
在早期版本的 MTV 中,如果虚拟机配置了在尝试迁移时在 vSphere 中不再提供数据存储的磁盘,则 forklift-controller
会崩溃,导致 MTV 不可用。在 MTV 2.6.1 中,MTV 会为带有此类磁盘的虚拟机提供关键验证,通知用户问题,且 forklift-controller
不再崩溃,虽然它无法传输磁盘。(MTV-1029)
1.3.8. 解决的问题 2.6.0
删除 OVA 供应商会自动删除 PV
在早期版本的 MTV 中,当 OVA 供应商被删除时,PV 不会被删除。这个问题已在 MTV 2.6.0 中解决,当 OVA 供应商被删除时 PV 会被自动删除。(MTV-848)
修复迁移带有快照的 VMware 虚拟机时丢失的数据
在早期版本的 MTV 中,当迁移具有 VMware 快照的虚拟机时,OpenShift Virtualization 中创建的虚拟机包含快照中的数据,而不是虚拟机的最新数据。这个问题已在 MTV 2.6.0 中解决。(MTV-447)
取消和删除失败的迁移计划不会清理 填充
pod 和 PVC
在 MTV 版本中,当您取消并删除失败的迁移计划时,在创建 PVC 并生成 填充
pod 后,填充
pod 和 PVC 不会被删除。您必须手动删除 pod 和 PVC。这个问题已在 MTV 2.6.0 中解决。(MTV-678)
Red Hat OpenShift 到 Red Hat OpenShift 迁移需要集群版本为 4.13 或更高版本
在 MTV 版本中,当从 Red Hat OpenShift 迁移到 Red Hat OpenShift 时,源供应商集群的版本必须是 Red Hat OpenShift 版本 4.13 或更高版本。 这个问题已在 MTV 2.6.0 中解决,在从 4.13 之前从 OpenShift 版本迁移时会显示验证。 (MTV-734)
来自 RHV 的多个存储域始终映射到单个存储类
在 MTV 版本中,不同存储域的多个磁盘始终映射到单个存储类,无论配置的存储映射是什么。这个问题已在 MTV 2.6.0 中解决。(MTV-1008)
virt-v2v 的固件检测
在 MTV 的早期版本中,从 OVA 迁移的虚拟机没有使用 UEFI 设置固件类型。这是使用 BIOS 配置的虚拟机不正确。这个问题已在 MTV 2.6.0 中解决,因为 MTV 现在会在磁盘转换过程中消耗 virt-v2v
检测到的固件。(MTV-759)
创建主机 secret 需要在创建主机前验证 secret
在 MTV 版本中,当为 vSphere 主机配置传输网络时,控制台插件会在创建其 secret 前创建 Host
CR。应首先指定 secret,以便在发布 Host
CR 前进行验证。这个问题已在 MTV 2.6.0 中解决。(MTV-868)
当添加 OVA 供应商时,会出现 ConnectionTestFailed
消息
在 MTV 的早期版本中,当添加 OVA 供应商时,错误消息 ConnectionTestFailed
会立即出现,尽管供应商已被成功创建。这个问题已在 MTV 2.6.0 中解决。(MTV-671)
RHV provider ConnectionTestSucceeded
True 响应来自错误的 URL
在 MTV 版本中,ConnectionTestSucceeded
条件被设置为 True
,即使 URL 与 RHV Manager 的 API 端点不同。这个问题已在 MTV 2.6.0 中解决。(MTV-740)
当 vSphere 数据中心嵌套在文件夹中时,迁移不会失败
在 MTV 的早期版本中,迁移放置在数据中心的虚拟机,该数据中心直接存储在 vSphere 中的 /vcenter
下。但是,当数据中心存储在文件夹中时,它会失败。这个问题已在 MTV 2.6.0 中解决。(MTV-796)
OVA 清单监视器检测到已删除的文件
OVA 清单监视器检测到文件更改,包括已删除的文件。现在,ova-provider-server
pod 的更新会每五分钟发送到更新清单的 forklift-controller
pod。(MTV-733)
当 Forklift 无法构建或创建 PVC 时,不明确的错误消息
在 MTV 版本中,错误日志缺少清晰的信息,用于标识无法在没有配置存储配置集的目标存储类上创建 PV 的原因。 这个问题已在 MTV 2.6.0 中解决。 (MTV-928)
当存在过时的 ovirtvolumepopulator 时,计划会一直处于 CopyDisks
阶段
在 MTV 的早期版本中,以前的迁移可能会留下一个过时的 ovirtvolumepopulator
。当为同一虚拟机启动同一虚拟机的新计划时,CreateDataVolumes
阶段不会在转换到 CopyDisks
时创建填充 PVC,从而导致 CopyDisks
阶段无限期保留。 这个问题已在 MTV 2.6.0 中解决。 (MTV-929)
有关本发行版本中所有已解决的问题的完整列表,请参阅 JIRA 中的 解决问题 列表。