ESXi 上 VM 的 CPU 分配

Mar*_*tin 7 cpu-usage vmware-esxi

我对 VMware 一无所知,但我最近在 ESXi 上设置了 4 个虚拟机。其中 3 个虚拟机非常不占用资源(一个很少使用的文件服务器、一个很少使用的域域控制器和一个 VMware vMA 主机),一个是资源密集型的(一个终端服务器,在我的小办公室)。

终端服务器虚拟机在高峰时段运行非常缓慢。看看 vSphere 中的性能摘要,CPU 似乎确实已经超过 90%,我的磁盘延迟图也有一些峰值,偶尔会达到 500 毫秒左右。

我没有在 VMware 中配置任何资源分配设置,并且总是假设它足够聪明,允许较繁忙的虚拟机在不太繁忙的虚拟机不需要它们时使用可用资源。然而,情况似乎并非如此,因为整个服务器的 CPU 图表从未超过 10%,并且磁盘延迟从未超过 4 毫秒左右。

所以这告诉我,也许我需要在 VMware 中配置一些资源分配的东西,但我不太明白在这种情况下我应该配置什么。我应该增加 vCPU 的数量还是配置处理器关联?还是应该使用共享或预订功能?本质上,我不想让其他虚拟机的资源完全匮乏,但我确实希望终端服务器能够使用似乎可用的系统资源。

在此先感谢您的任何指导。

peh*_*hrs 5

在 ESXi 中,vCPU 将映射到真实 CPU 内核上的内核以进行计算。这意味着在具有 4 个内核的系统上配置了 1 个 vCPU 的 VM 永远不能使用超过系统容量的 1/4 左右。一般来说,您不想为虚拟机配置太多 vCPU(因为额外的 vCPU 会增加开销),也不要太少(因为您无法使用硬件的全部容量)。

对于您描述的这样一个简单的场景,您不必纠结于资源分配系统或处理器关联。默认情况下,ESXi 使用一个系统为每个虚拟机分配公平的资源份额,其中配置的资源用于计算虚拟机获得多少份额。所以你真的不必担心饥饿。

关于 ESXi 的性能有很多需要了解,但如果您想了解如何配置系统以获得合理的性能,我建议您从阅读最佳实践开始。