随着虚拟化软件的升级更新,虚拟化架构已经从完全虚拟化转向半虚拟化。
完全虚拟化是指在虚拟环境中模拟实际存在的硬件。因此,在虚拟环境中运行的操作系统可以支持现有硬件的驱动程序。虽然驱动程序方面兼容性很高,但是为了模拟硬件,在虚拟环境中调用现有硬件中的驱动器程序可能会降低系统的整体性能。
半虚拟化要准备规定的虚拟硬件。对应的驱动程序被集成到虚拟机中,并被操作系统所使用。
另一个是半虚拟化。由于半虚拟化不是模拟现实的硬件,因此,域虚拟硬件相关的软件就变得很简单,可以作为一个整体高速地运行。
但是,为了给半虚拟化提供虚拟硬件,每个虚拟化环境中运行的操作系统都需要对应的驱动程序。
hypervisor的性能也会随着CPU而改变
说不定读到这里,你会觉得似乎虚拟化全部是关于软件方面的。不过,像AMD的Opteron和Intel的Xeon这样的硬件也提供了虚拟化功能。例如,Intel CPU中扩展页表(IntelVT Extended Page Tables)的全新支持可通过减少页表虚拟化带来的开销进一步提高虚拟化性能。
此外,Intel还提供了I/O虚拟化功能“VT-d”和网络虚拟化功能“VT-c”。同时,AMD即将在2009年下半年推出的Fiorano平台(RD890芯片组系列)也会支持IOMMU虚拟化功能。
这种硬件方面的虚拟化支持功能每天都是在更新的,可以说并不是在虚拟环境中使用旧的服务器,而是导入新的服务器,迁移旧服务器上的任务。虽然旧的服务器还可以在虚拟化环境下运行,但是旧的服务器已经不能再利用了。而且,迁移到最新服务器上,不仅能耗和散热量都有所降低,服务器本身的成本和性能并没有增加多少。
需要注意的是,如果hypervisor不支持的话,这些功能都是无法使用的。
使用台式计算机也可以进行虚拟化测试
谈到CPU的虚拟化功能,那就必须要对装载了Xeon或者Opteron的服务器进行虚拟化测试。但是,考虑到当前的经济危机,要购买测试用服务器可能要数十万日元吧。而且,测试时要使用多个虚拟化服务器,测试虚拟服务器在虚拟环境之间的实时迁移功能,最少也要使用两台同样规格的服务器。
在这里我们推荐使用虚拟化的台式计算机进行测试。现在市场中已经有采用了Intel Core i7或者AMD Phenom II等CPU的台式计算机,从CPU方面来看,这和服务器虚拟化功能是一样的。
如果使用配置了Core i7的台式电脑的话,只要10万日元左右就可以买到了,配置Phenom II大概要8万美元。由于要测试实时迁移功能,所以需要购买两台,同时还要买BUFFLO的低成本iSCSI存储,整个测试环境大约需要30万日元吧。当然,如果测试条件很好的话,你可以购买服务器,你也可以根据业务水平来使用桌面PC。而且,如果你们并不是适合于使用虚拟化技术的话,可以使用桌面PC测试虚拟化就没有太大意义了。如果厂商免费提供hypervisor的话,那么为何不尝试一下用这种方法做测试?如果尝试一下,你对虚拟化的印象一定会有所改变。
虚拟化技术没有那么深奥,但是真正用好虚拟化技术也不是一件容易的事情。