10.16. 虚拟化
在PowerVM上热插拔 IBMVFC 设备会失败
当在 PowerVM hypervisor上使用装有 RHEL 8 操作系统的虚拟机(VM)时,尝试从正在运行的虚拟机中删除 IBM Power Virtual Fibre Channel(IBMVFC)设备当前会失败。相反,它会显示一个 outstanding translation
错误。
要临时解决这个问题,在虚拟机关闭时删除 IBMVFC 设备。
(BZ#1959020)
当使用ibmvfc
驱动程序时,IBM POWER 主机可能会崩溃
当在 PowerVM 逻辑分区(LPAR)上运行 RHEL 8 时,目前可能会因为 ibmvfc
驱动程序的问题而发生各种错误。因此,在某些情况下主机的内核可能会出现 panic,例如:
- 使用 Live Partition Mobility(LPM)功能
- 重置主机适配器
- 使用 SCSI 错误处理(SCSI EH)功能
(BZ#1961722)
在 IBM POWER 系统中使用 perf kvm record
可能会导致虚拟机崩溃
当在 IBM POWER 硬件的 little-endian 变体中使用 RHEL 8 主机时,使用 perf kvm record
命令为 KVM 虚拟机(VM)收集追踪事件样本会导致虚拟机变得没有响应。在以下情况下发生这种情况:
-
perf
工具由非特权用户使用,-p
选项用来标识虚拟机 - 例如perf kvm record -e trace_cycles -p 12345
。 -
虚拟机是使用
virsh
shell 启动的。
要临时解决这个问题,请使用带有-i
选项的 perf kvm
工具来监控使用 virsh
shell 创建的虚拟机。例如:
# perf kvm record -e trace_imc/trace_cycles/ -p <guest pid> -i
请注意,在使用 -i
选项时,子任务不会继承计数器,因此线程不会被监控。
(BZ#1924016)
使用 virtio-blk 将 LUN 设备附加到虚拟机中无法正常工作
q35 机器类型不支持 virtio 1.0 设备,因此 RHEL 8 不支持 virtio 1.0 中弃用的功能。特别是,RHEL 8 主机无法从 virtio-blk 设备发送 SCSI 命令。因此,使用 virtio-blk 控制器时,将物理磁盘作为 LUN 设备附加到虚拟机会失败。
请注意,物理磁盘仍可被传递给客户端操作系统,但应该使用 device='disk'
选项而不是 device='lun'
选项进行配置。
(BZ#1777138)
带有 iommu_platform=on
的虚拟机无法在 IBM POWER 上启动
RHEL 8 目前不支持 IBM POWER 系统上的虚拟机(VM)的 iommu_platform=on
参数。因此,在 IBM POWER 硬件上启动使用这个参数的虚拟机会导致虚拟机在引导过程中变得无响应。
带有启用 Hyper-V 的 Windows Server 2016 虚拟机无法引导
目前,无法引导使用 Windows Server 2016 作为客户端操作系统的虚拟机,它启用了 Hyper-V 角色,并使用以下 CPU 模型之一:
- EPYC-IBPB
- EPYC
要临时解决这个问题,使用 EPYC-v3 CPU 模型,或者为虚拟机手动启用 xsaves CPU 标记。
(BZ#1942888)
将 POWER9 客户端从 RHEL 7-ALT 主机迁移到 RHEL 8 会失败
目前,将 POWER9 虚拟机从 RHEL 7-ALT 主机系统迁移到 RHEL 8 会变得没有响应,显示Migration status: active
状态)。
要临时解决这个问题,在 RHEL 7-ALT 主机上禁用 Transparent Huge Pages(THP),这样可使迁移成功完成。
(BZ#1741436)
使用 virt-customize
有时会导致 guestfs-firstboot
失败
使用 virt-customize
工具修改了虚拟机(VM)磁盘镜像后,guestfs-firstboot
服务在某些情况下会因为 SELinux 权限不正确而失败。这会导致虚拟机启动过程中出现各种问题,如创建用户失败或系统注册失败。
要避免这个问题,请在 virt-customize
命令中添加 --selinux-relabel
选项。
从 macvtap 虚拟网络中删除转发接口会重置这个网络的所有连接计数
目前,从带有多个转发接口的 macvtap
虚拟网络中删除一个转发接口也会重置网络的其他转发接口的连接状态。因此,实时网络 XML 中的连接信息是不正确的。但请注意,这不会影响虚拟网络的功能。要临时解决这个问题,请重启主机上的 libvirtd
服务。
带有 SLOF 的虚拟机无法在 netcat 界面中引导
当使用 netcat(nc
)接口来访问当前在 Slimline Open Firmware(SLOF)提示符下等待的虚拟机控制台时,用户输入会被忽略,虚拟机仍无响应。要临时解决这个问题,请在连接虚拟机时使用 nc -C
选项,或者使用 telnet 接口。
(BZ#1974622)
在某些情况下,在 RHEL 8 虚拟机上挂载 virtiofs
目录会失败
目前,当使用 virtiofs
功能为虚拟机(VM)提供主机目录时,如果虚拟机使用的是 RHEL 8.4 内核,但 用的是RHEL 8.5 selinux-policy
软件包,那么在虚拟机上挂载目录会失败,并显示"Operation not supported"错误。
要临时解决这个问题,请重新启动虚拟机,并将其引导至虚拟机上的最新可用内核。
(BZ#1995558)
当使用很多 virtio-blk 磁盘时,虚拟机有时无法启动
在虚拟机(VM)中添加大量 virtio-blk 设备可能会耗尽平台中可用的中断向量。如果出现这种情况,虚拟机的客户机操作系统无法引导,并显示 dracut-initqueue[392]:Warning:Could not boot
错误
当在 AMD EPYC 上使用主机透传模式时,虚拟机不会检测到 SMT CPU 拓扑
当在AMD EPYC 主机上以CPU主机直通模式引导虚拟机(VM)时,不会显示TOPOEXT
CPU 功能标志。因此,虚拟机无法检测到每个内核有多个线程的虚拟 CPU 拓扑。要临时解决这个问题,使用 EPYC CPU 模型而不是主机透传引导虚拟机。