ESXi 4.1 上的 Windows 2008 R2 CPU 利用率内核高

ESXi 4.1 上的 Windows 2008 R2 CPU 利用率内核高

我有一个在 ESXi 4.1 上运行的 Win2k8 客户机。主机有 12 个核心,即使客户机是主机上唯一的 VM,也会出现问题。我们有 4 个核心专用于客户机。

我们注意到,当 CPU 负载上升时,网络开始堵塞。经过一些测试,我们发现,当运行一个简单的 CPU 占用工具,设置为以 100% 运行 3 个线程时,常规 CPU 负载会上升到 75%(这是应该的),任务管理器中的“内核时间”图表上升到 25%。

我的直觉告诉我,网络问题和内核时间问题是相同的。我们在同一主机上创建的另一个类似的虚拟机证实了这一点,该虚拟机没有出现这两个问题。

VMWare 工具已安装并且 NIC 已安装e1000

我们还能做什么来解决这个问题?

答案1

您希望为每个客户机使用最先进的网络驱动程序。Windows Server 208 R2 支持半虚拟化驱动程序。半虚拟化驱动程序对客户机和主机的开销最小。如果您强制主机完全模拟硬件,则强制 CPU 利用率。切换到 vmxnet3,看看这是否能减少工作量并提高性能。您还提到您正在查看客户机的性能问题。这是谎言。由于系统是虚拟化的,您应该始终参考 vmware 性能计数器而不是客户机性能计数器。例如,您可能会看到 cPU 为 100%,但在 vmware 中,您会发现机器当前正在使用的 500mhz 是 100%。

答案2

如果您尚未销毁客户机,您可以尝试一些基本的操作系统故障排除(例如 chkdsk、驱动程序等)以查看是否可以修复。我最近遇到了一个问题,客户机实例报告了两个不同的 CPU/核心状态。

客户机被分配了 4 个核心,但任务管理器上只显示 3 个,而设备管理器中则加载了 4 个。chkdsk 发现错误。纠正错误后,CPU/核心始终报告正确,并且该客户机之前的所有异常都消失了。

相关内容