最佳 VMWare Esxi CPU 资源分配策略

最佳 VMWare Esxi CPU 资源分配策略

我们部门有一台 88 核 CPU 的机器。假设有 11 位研究人员,他们每次测试新方法时都想使用这台机器。我们在 VMWare ESXI 主机上创建了 11 个虚拟机,每个研究人员一个。

问题是如何在虚拟机之间共享 CPU 以实现以下目标:(这样才是公平的,并且可以得到最佳利用)

  1. 当只有 1 个 VM 在执行 CPU 密集型工作而其他 VM 处于空闲状态时,它可以充分利用 CPU 的最大功率。
  2. 假设 4 个虚拟机正在执行 CPU 密集型工作,则每个虚拟机可获得大约 25% 的 CPU 利用率。
  3. 当没有空闲时,每个都获得大约 1/11 的 CPU 功率。

我的建议是将全部 88 个核心分配给每个虚拟机,并为每个虚拟机保留 1/11 的 CPU 功率。相反,我们的系统管理员希望为每个虚拟机分配 8 个核心。他的理由是,如果一个虚拟机例如获得所有核心的 100%,当另一个虚拟机尝试使用 CPU 时,它只会获得保留的量,而不是 50%。

根据我读到的内容这里这里我认为在上述情况下,VMWare ESXI 会释放资源并将其提供给第二台 VM。有人能帮我们吗?

答案1

我的建议是将所有 88 个核心分配给每个虚拟机,并为每个虚拟机保留 1/11 的 CPU 功率。

请不要这样做,拜托——大概您没有参加过 vSphere 课程吧?

除非问题得到证实,否则不要使用任何形式的资源分配。无论你做什么,都不要分配比物理插槽实际拥有的更多的 vCPU(在本例中为 22 个),否则如果你真的想的话就这么做,但这通常是一个糟糕的主意(如果有时间的话,可以谷歌搜索“NUMA”和“vNUMA”)。

我要做的是为每个 VM 分配 4、6 或 8 个 vCPU,然后让 ESXi 继续运行,它的设计实际上是可以自行运行一切。

相关内容