负载过重的 ESX 服务器是否会导致客户虚拟机的 CPU 峰值?

负载过重的 ESX 服务器是否会导致客户虚拟机的 CPU 峰值?

因此,我们在 ESX 4.1 服务器上运行了许多虚拟机以进行产品测试。ESX 服务器有时会处于重负载状态。在某些使用情况下,我们遇到了高 CPU 水平,但我们无法始终复制这种情况。如果整个 ESX 服务器处于重负载状态,这是否会导致客户机显示高 CPU 使用率?

换句话说,如果客户机需要的 CPU 资源比服务器多,这会如何影响操作系统和进程所指示的 CPU 使用率?

答案1

ESX 性能提示的权威来源之一是性能故障排除指南!(PDF)

简而言之:如果您的主机很忙,并且您的虚拟机报告了较高的“就绪时间”(这是虚拟机准备好执行工作但找不到物理 CPU 供虚拟机管理程序调度的计算机的计数器),那么您遇到的症状不是客户机 CPU 使用率高,而是各个虚拟机没有获得足够的物理 CPU 时间来处理其工作负载。这可能表现为客户机 CPU 使用率高,但这只是客户机犯的一个会计错误,因为它不知道虚拟化本身。

因此,请检查就绪时间,如果确实很高,请找到一种方法来为您的机器/集群添加更多物理 CPU 或减少使用。

客户机 CPU 监控可能会在计算机空闲时和繁忙时出现偏差。在一种情况下,空闲进程不受虚拟机管理程序的调度。在另一种情况下,许多计算机的高使用率会导致某些计算机的 CPU 不足,因此,如果没有额外的虚拟机管理程序级监控,则不应使用客户机级监控。

答案2

客户机内 CPU 监控是个坏主意,几乎不可能让任何客户机真正知道它在任何虚拟机管理程序上占用了多少 CPU 时间 - 唯一真正知道的方法是通过虚拟机管理程序查看外部。所以是的,一个非常繁忙的虚拟机管理程序很容易让客户机内 CPU 使用率统计数据偏离基础 - 无论如何不要相信这些数据。

相关内容