介绍了云计算,也介绍了虚拟化的内容,有人问,在IA架构上实现云计算和虚拟化时,底层需要虚拟机管理器(Virtual Machine Monitor,简称VMM)来进行管理,那么VMM都有哪些呢,之间有什么区别呢?本文就对此探讨一下。
VMM是在底层实现对其上的虚拟机的管理和支持。以前的虚拟软件必须是装在一个OS上,然后再在虚拟软件之上安装虚拟机,装OS和应用。但现在Intel 的CPU已经对虚拟化技术做了硬件支持,大多数VMM就是直接装在裸机上,在其上再装几个虚拟机… 这样就大大提升了虚拟化环境下的性能体验。如图就是目前常见的VMM工作模式:
小结一下VMM的市场现状。VMM自从05年以来一直是蓬勃发展,随着云计算/虚拟化日益广泛的应用,不仅厂商越来越多,VMM的功能和性能也是有了长足的进展。最初虚拟化对大量I/O的支持还是比较弱的,性能不佳;但到了现在,结合 Intel 芯片的硬件支持,I/O性能损耗已经很小了。
看看VMM的众多厂商,就会发现,大多数的VMM都有收费版和免费版,它们之间的区别一般是功能上的差别:免费版一般都只能实现最基本的功能, 让你体验一下;而收费版则功能支持比较全面。厂商是要靠收费版赚钱的,但需要用免费版来普及概念,扩大人气。不要小看了免费版,其实我们很多基本的虚拟化需求用免费版就可以满足了。
先说说VMWare。VMWare是VMM的一大供应商,美国上市公司。它的VMM产品目前有两大系列:免费的ESXi,收费的vSphere。ESXi支持服务器整合等基本的VMM功能;而vSphere则支持了更多的更高级的特性,比如动态迁移、负载均衡… 这些高级功能可以让基于VMM之上的应用有更高的可用性、可靠性、容灾度等。当然,vSphere也是比较贵的,买过的人都知道。
另一大VMM供应商就是Citrix。Citrix的产品也是分成了两大类:免费的 XenServer,收费的Essentials。XenServer虽说是免费的,但也是声称支持企业级应用,所以有动态迁移等功能。而 Essentials当然也是功能齐备了。目前,Essentials的价格还不算很贵。
微软也有自己的VMM产品:Hyper-V。Hyper-V是集成在Windows Server 2008里的,可以实现服务器整合、快速迁移等功能。因为Windows Server是收费的,这个也应该算收费的。微软的号召力也很强大,有很多的第三方软件公司基于Hyper-V进行二次开发,进一步提升Hyper-V的功能。
提到VMM,也一定要讲XEN。XEN本身是开源的,很多商业的发行Linux中也集成了XEN的 rpm包,一些企业也在使用这些不同版本的XEN搭建虚拟化环境。