4.7. 配置虚拟 NUMA

在管理门户中,您可以在虚拟机上配置虚拟 NUMA 节点,并将它们固定到一个或多个主机上的物理 NUMA 节点。主机的默认策略是在主机上任何可用资源上调度并运行虚拟机。因此,支持在一个主机套接字内无法容纳的大型虚拟机的资源可以分布到多个 NUMA 节点上。随着时间推移,这些资源可能会发生移动,从而导致性能下降和无法预测。配置和固定虚拟 NUMA 节点,以避免出现这种情况并提高性能。

配置虚拟 NUMA 需要启用 NUMA 的主机。若要确认主机上是否已启用 NUMA,请登录主机并运行 numactl --hardware。此命令的输出应至少显示两个 NUMA 节点。您还可以通过从 Hosts 选项卡中选择主机并单击 NUMA Support 来查看管理门户中主机的 NUMA 拓扑。只有所选主机至少有两个 NUMA 节点时,此按钮才可用。

注意

如果您定义 NUMA Pinning,默认迁移模式默认为 Allow manual migration

配置虚拟 NUMA

  1. 单击 ComputeVirtual Machines 并选择虚拟机。
  2. Edit
  3. 单击 Show Advanced Options
  4. 单击 主机 选项卡。
  5. 选择 Specific Host(s) 单选按钮,然后从列表中选择主机。所选主机必须至少有两个 NUMA 节点。
  6. 单击 NUMA Pinning
  7. NUMA Topology 窗口中,根据需要单击鼠标右边的框并将它拖动虚拟 NUMA 节点,以将 NUMA 节点托管到左侧,然后单击 OK
  8. 从每个 NUMA 节点的 Tune Mode 下拉列表中,选择 StrictPreferredInterleave。如果所选模式为 PreferredNUMA Node Count 必须设置为 1
  9. 您还可以通过从 Resource Allocation 选项卡中 CPU Allocation 设置下的 CPU Pinning Polcy 下拉列表中选择 Resize 和 Pin NUMA 来自动设置 NUMA 固定策略:

    • none - 在没有任何 CPU 固定的情况下运行。
    • 手动 - 在特定物理 CPU 和特定主机上运行手动指定的虚拟 CPU。仅在虚拟机固定到主机时才可用。
    • 调整大小和 Pin NUMA - 根据主机重新定义虚拟机虚拟 CPU 和 NUMA 拓扑的大小,并将它们固定到主机资源。
    • dedicated - 排除虚拟 CPU 以托管物理 CPU。可用于集群兼容性级别 4.7 或更高版本。如果虚拟机启用了 NUMA,则必须取消固定所有节点。
    • 隔离线程 - 将虚拟 CPU 固定到主机物理 CPU。每个虚拟 CPU 都获得一个物理内核。可用于集群兼容性级别 4.7 或更高版本。如果虚拟机启用了 NUMA,则必须取消固定所有节点。
  10. 点击 确定
注意

如果您不将虚拟 NUMA 节点固定到主机 NUMA 节点,则系统将默认为包含主机设备的内存映射 I/O(MMIO)的 NUMA 节点,只要存在一个或多个主机设备,所有这些设备都来自单个 NUMA 节点。