3)CPU问题
我们的测试平台包含两个双核的2.7GHz 64位Xeon处理器。不过,ESX Server只能让我们按32位的处理方式来分配CPU,这意味着虽然ESX Server可以执行64位代码来管理虚拟机环境,但虚拟机只能运行32位操作系统和应用程序。值得注意的是,ESX Server能支持64位操作系统,你可以在Vmware下部署64位应用。然而,在32位的Windows Server 2003上运行32位应用程序时,ESX Server只能按32位处理方式分配CPU。当我们试着安装64位的Windows Server 2003时,Windows能检测到这个虚拟CPU也只是32位的。
此外,可用的资源还包括实际的CPU MHz。理论上,我们可以在虚拟机之间任意划分CPU时钟周期。处理器数量也可以更加灵活,如两个双核处理器在理论上就有四个可供分配的处理器。
在测试中,我们用两个虚拟机平分4.7GHz的处理能力,在这种配置下,内存密集型测试的性能下降了4%-7%。然后我们把3 GHz的处理能力分配给SQLIOSim,把剩下的1.7GHz给LoadSim,发现性能又回到了原先没有资源竞争时的那个水平。
ESX Server通过Virtual Infrastructure Client,使用相同的接口和方式来分配CPU和系统内存。在分配CPU处理能力时,可以按可用频率的百分比、或具体的频率值来划分,也可以按可用处理器的个数来划分。在分配内存时,可以按可用内存的百分比、或具体内存大小来划分。