7 支持的主机、Guest 和功能 #
《Release Notes》(发行说明)中概述了支持的体系结构以及 Xen 和 KVM 的虚拟化限制。
7.1 主机环境(超级管理程序) #
本节列出了在各种虚拟化主机(超级管理程序)上作为 Guest 运行的 SUSE Linux Enterprise Server 15 SP2 的支持状态。
SLES 11 SP4
SLES 12 SP1、SP2、SP3、SP4、SP5
SLES 15 SP0、SP1、SP2
VMware ESXi 6.5、6.7
Microsoft Windows 2008 R2 SP1+、2012+、2012 R2+、2016、2019
Citrix XenServer 7.0、7.1、8.0
Oracle VM 3.4
对于 Guest 和主机,SUSE 主机操作系统的支持级别均为全面 L3。
对于 Guest,第三方主机环境的支持级别为全面 L3;对于主机,需要主机供应商的协作与支持。
仅当虚拟化主机和 Guest 都使用 SUSE 产品时,SUSE 才提供全面 L3 支持。
如果虚拟化主机使用第三方软件,则 SUSE 只能保证为 Guest 提供 L3 支持。对于主机,需要供应商的协作。
7.2 Guest 环境 #
本节列出了在 SUSE Linux Enterprise Server 15 SP2 上虚拟化的各种 Guest 操作系统的支持状态。所有全虚拟化(在下表中以 “FV” 表示)和半虚拟化(在下表中以 “PV” 表示)的 Guest 操作系统均受支持,但存在两种例外情况:对于 Windows,仅支持全虚拟化状态,对于 NetWare 操作系统,仅在 Xen 上支持半虚拟化状态。除非另有说明,否则所有 32 位和 64 位版本的 Guest 操作系统均受支持(请参见“NetWare”)。
SLES 10 SP4
SLES 11 SP3、SP4
SLES 12 SP0、SP1、SP2、SP3、SP4、SP5
SLES 15 SP0、SP1、SP2
OES 11 SP2、2015、2015 SP1、2018、2018 SP1、2018 SP2
Netware 6.5 SP8(仅限 32 位)
Windows Server 2008 SP2+、2008 R2 SP1+、2012+、2012 R2+、2016、2019
SLED 15 SP1
RHEL 5.11+、6.9+、7.7+、8.0+
Windows 8+、8.1+、10+
7.2.1 半虚拟化驱动程序的提供 #
为了提升 Guest 操作系统的性能,我们将会提供半虚拟化驱动程序(如果有)。尽管这些驱动程序不是必需的,但我们强烈建议使用。半虚拟化驱动程序的提供方式如下:
- SUSE Linux Enterprise Server 12/12 SP1/12 SP2
包含在内核中
- SUSE Linux Enterprise Server 11/11 SP1/11 SP2/11 SP3/11 SP4
包含在内核中
- SUSE Linux Enterprise Server 10SP4
包含在内核中
- RedHat
在 RedHat Enterprise Linux 5.4 和更高版本中提供
- Windows
SUSE 开发了适用于 Windows 的基于 virtio 的驱动程序,这些驱动程序包含在虚拟机驱动程序包 (VMDP) 中。有关更多信息,请参见https://www.suse.com/products/vmdriverpack/。
7.3 KVM 硬件要求 #
目前,SUSE 支持 AMD64/Intel 64 和 Arm AArch64 主机以及 IBM Z 上的 KVM 全虚拟化。
在 AMD64/Intel 64 体系结构上,KVM 是围绕 AMD* (AMD-V) 和 Intel* (VT-x) CPU 中包含的硬件虚拟化功能设计的。它支持芯片组和 PCI 设备的虚拟化功能,例如 I/O 内存映射单元 (IOMMU) 和单根 I/O 虚拟化 (SR-IOV)。您可以使用以下命令测试您的 CPU 是否支持硬件虚拟化:
tux >
egrep '(vmx|svm)' /proc/cpuinfo如果此命令未返回任何输出,则表示您的处理器不支持硬件虚拟化,或者已在 BIOS 或固件中禁用此功能。
以下网站指出了支持硬件虚拟化的 AMD64/Intel 64 处理器:http://ark.intel.com/Products/VirtualizationTechnology(针对 Intel CPU),以及 http://products.amd.com/(针对 AMD CPU)。
在 Arm 体系结构上,最初是从 Arm Cortex-A15 开始向 Armv7-A 处理器添加虚拟化支持的,其中包括 Cortex-A7 和 Cortex-A17。Armv8-A 处理器包含虚拟化支持。
仅当 CPU 硬件虚拟化功能可用时,才会装载 KVM 内核模块。
VM 主机服务器的一般性最低硬件要求与第 2.1 节 “硬件要求”中概述的相同。不过,对于每个虚拟化的 Guest 都需要提供额外的 RAM。此额外 RAM 量应至少与物理安装所需的 RAM 量相同。另外,强烈建议为每个运行中的 Guest 至少配备一个处理器核心或超线程。
7.4 功能支持 #
7.4.1 主机 (Dom0) #
Dom0
) #不支持在运行时添加或去除物理 CPU,但可以添加或去除每个 VM Guest 的虚拟 CPU。
7.4.2 半虚拟化 Guest #
对于实时迁移,源体系结构和目标体系结构均需要匹配;即处理器(AMD* 或 Intel*)必须相同。除非使用了 CPU ID 掩码(例如,使用 Intel FlexMigration),否则目标的处理器修订版应该与源相同或者比源更新。如果在不同系统之间移动 VM,那么这些规则适用于每一次移动。为了避免优化的代码在运行时或应用程序启动期间失败,源 CPU 和目标 CPU 需要公开相同的处理器扩展。Xen 透明地向 VM 公开物理 CPU 扩展。总而言之,Guest 可以是 32 位或 64 位,但 VHS 必须相同。
对于支持 Intel FlexMigration 的计算机,CPU-ID 掩码和错误引发可以提高跨 CPU 迁移的灵活性。
7.4.3 全虚拟化 Guest #
仅当使用的是 PV 驱动程序 (VMDP) 时,才支持在 Xen 和 KVM 中热插拔虚拟网络和虚拟块设备,以及收缩、恢复动态虚拟内存及调整其大小。
对于 KVM,有关支持的限制、功能、建议的设置和方案的详细说明以及其他有用信息均在 kvm-supported.txt
中提供。此文件是 KVM 软件包的一部分,可在 /usr/share/doc/packages/kvm
中找到。