VMware ESXi – 不断变化的CPU时间(CPU预留)

我在VMware ESXi 3.5下运行FreeBSD 7.2。 主机有2个物理CPU,BSD框是当前唯一运行的虚拟机。 只有一个虚拟CPU被分配给虚拟机。

测量某个特定程序的CPU时间时,我会得到不同的结果。 VMware根据系统负载情况报告处理器使用情况。 是否可以将物理CPU的固定份额分配给特定的VM? 我希望CPU时间或多或less是不变的。 在VMware Infrastructure Client中configuration虚拟机时,我尝试设置CPU预留,但CPU时间仍然有很大差异。

提前致谢!

实际使用的实际(物理)CPU时间将始终反映客户机内运行的任何负载所需的需求,预留保证没有其他VM(或Hypervisor \ Console)会否认该VM是预留的,但这并不意味着即可用的CPU资源将被实际使用。 保留更多是围绕潜在资源的逻辑围栏,而不是明确的分配数量。 也就是说,即使虚拟机没有任何操作,保留应该是相当一致地分配保留的资源,所以当你说你正在测量那里的CPU时间测量不稳定? 即使在预留的情况下,您也不能相信从虚拟机内部获得的任何数字,因为分配资源的进程通常会对虚拟机内部的定时器造成严重破坏,您最好从Hypervisors的angular度来看问题。 对于ESX 3.5,esxtop是您最好的开始。

当我将MS SQL Server设置为VM时,我遇到了这个问题。 我们的服务器团队告诉我,没有办法保证任何一个虚拟机的特定CPU时间百分比。 真正的CPU资源如此广泛地变化(和响应时间,因为它),我最终使用物理服务器。