8.2.3. 优化设置说明

内存注意事项

内存页面共享可让虚拟机利用其他虚拟机中未使用的内存,最多使用 200% 的分配内存。此过程基于您 Red Hat Virtualization 环境中的虚拟机不会全部同时运行容量,允许将未使用的内存临时分配给特定虚拟机。

CPU 注意事项

  • 对于非 CPU 密集型工作负载,您可以使用超过主机内核数的处理器内核总数运行虚拟机。这样做可启用以下内容:

    • 您可以运行更多虚拟机,从而降低硬件要求。
    • 您可以使用原本无法实现的 CPU 拓扑配置虚拟机,例如,虚拟内核的数量在主机内核数和主机线程数量之间。
  • 为了获得最佳性能,尤其是 CPU 密集型工作负载,您应该在虚拟机中使用与主机中相同的拓扑,因此主机和虚拟机预计同样的缓存使用量。主机启用了超线程后,QEMU 会将主机的超线程视为内核,因此虚拟机不知道它在具有多个线程的单一核心上运行。此行为可能会影响虚拟机的性能,因为实际对应于主机核心中的超线程的虚拟核心可能会与同一主机核心中的另一个超线程共享一个缓存,而虚拟机则将其视为一个单独的核心。

下表描述了新集群编辑集群窗口中优化选项卡的设置。

表 8.2. 优化设置

字段description/Action

Memory Optimization

  • None - Disable memory overcommit :禁用内存页面共享。
  • 对于服务器负载 - 允许调度 150% 物理内存 :将内存页共享阈值设置为每个主机的系统内存的 150%。
  • 对于桌面负载 - 允许调度 200% 物理内存 :将每个主机上系统内存内存的内存页面共享阈值设置为 200%。

CPU 线程

选择 Count Threads As Cores 复选框可让主机运行的虚拟机,且处理器内核总数大于主机中的内核数。

选择了此复选框后,公开的主机线程将被视为虚拟机可以使用的内核。例如,一个有 24 个内核,每个内核有 2 个线程的核系统(总共 48 个线程)可以运行最多 48 个虚拟机,用于计算主机 CPU 负载的算法会与潜在的内核的两倍相比。

内存 Balloon

选择 Enable Memory Balloon Optimization 复选框可在此集群中运行的虚拟机上启用内存过量使用。选择了此复选框后,内存过量使用管理器(MoM)会尽可能启动膨胀,但会限制每个虚拟机的保证内存大小。

要运行气球功能,虚拟机需要有一个带有相关驱动程序的气球设备。每个虚拟机都包含 balloon 设备,除非特别删除。此集群中的每个主机在状态更改为 启动 时会收到 balloon 策略更新。如果需要,您可以手动更新主机上的 balloon 策略,而无需更改状态。请参阅 第 8.2.9 节 “更新集群中的主机上的 MoM 策略”

务必要清楚,在某些情况下,ballooning 可能会与 KSM 冲突。在这种情况下,MoM 将尝试调整气球的大小,以最大程度减少冲突。此外,在某些情况下,ballooning 可能会导致虚拟机的最优性能。建议管理员小心使用膨胀优化。

KSM 控制

选择 启用 KSM 复选框可让 MoM在需要时运行 Kernel Same-page Merging (KSM),并且当它生成内存可节省能降低其 CPU 的成本时。