在众多hypervisor中做出选择可能是管理员要做出的最重要的决定之一。在做出上述决定时,务必牢记要在已经推出市场一段时间的hypervisor中进行选择。替代hypervisor很困难,因此决策都是事到临头才做出的。
熟悉虚拟化系统的人已经了解每种hypervisor都具有不同程度的复杂性及功能。这可能会让决定变得复杂,但彻底地研究不同的hypervisor厂商推出的产品,能够在很大程度上缩减选择范围。
VMware ESX/ESXi
VMware ESX/ESXi目前是裸金属hypervisor领域的***,市场份额远远超出了其他hypervisor厂商。VMware ESX/ESXi涉及很多VMware生态系统以及第三方工具,最重要的是vSphere和NSX网络虚拟化。vSphere和NSX网络虚拟化产品经过了大量的测试,非常成熟,占据了大量的市场份额,但与竞争对手产品相比,VMware的vSphere定价更高一些。
VMware继续在产品中增加新功能,但随着时间的推移,产品也变得更加复杂,管理该产品需要专业技能,因此,如果选择了ESX/ESXi,你可能要花更多的费用聘用员工、开展培训。再加上产品许可费用较高,行业普遍认为VMware价格过高也就不足为奇了。这对VMware来说是个麻烦事,因为hyper-v虚拟化正在面临来自容器以及云的竞争压力。在容器以及云方面,VMware正在努力追赶。
VMware有个非常庞大且成熟的用户群,在用户忠诚度方面具备优势—这也可以被视为厂商锁定。VMware公司承认正在面临威胁并开始支持Docker和OpenStack。
ESX/ESXi利用丰富的生态系统提供了丰富的功能,利用NSX保证安全性。唯一的不足是由于许可以及培训成本较高导致总拥有成本很高。
KVM
KVM是Linux平台下一款开源的裸金属hypervisor,支持很多客户机操作系统,包括流行的Linux发行版、Solaris以及Windows服务器。Red Hat发行版中交付了KVM版本,并通过简化操作、增加部署工具解决了产品易用性问题。
Red Hat利用了Ansible提供的自动化配置工具并解决了可扩展性及易用性问题,Ansible的模块化方法分离出了很多产品,从虚拟集群一直到云。
KVM引起了VMware以及微软Hyper-V用户的注意,由Scale Computing和Nutanix提供的KVM定制版正在受到越来越多的关注。
就功能而言,KVM非常棒。其倾向于使用自动化而非笨重的手工工具。在可扩展性、性能方面表现也很出色,KVM用户社区非常活跃,反馈的问题很快就能够解决。KVM的总拥有成本非常低—在Linux 2.6.20及之后的版本中提供了KVM标准版。
Microsoft Hyper-V
Hyper-V可以作为独立的裸金属产品存在或者Windows服务器上的一个安装程序。Hyper-V不像VMware一样高级,但Windows服务器普遍存在保证了Hyper-V位于***hypervisor行列当中。微软力推的虚拟化是Hyper-V,这么做的问题是在快速采用后,用户数基本就到达顶点了。
微软在云方面进行大规模投资已经影响了Hyper-V环境。Azure Stack即将发布,这引发了采用虚拟化与完全进入云的问题。似乎微软将会倾向于Azure Stack,Azure Stack实现了与Azure公有云的全面集成,这可能意味着Hyper-V今后会处于不利地位。
尽管Hyper-V提供了卓越的稳定性而且总拥有成本处于中间位置,但VMware vSphere要更流行。
Citrix XenServer
Citrix很早之前就是一家虚拟化厂商并且有相当多的用户,但谈到功能特性以及性能问题时,Citrix XenServer hypervisor似乎要落后于其他厂商。与竞争对手相比,XenServer增加了很多开销。
和Red Hat类似,Citrix已经从最初的开源项目转变为了商业产品。由于项目启动时间较早,XenServer要比KVM更为成熟,但进展却缓慢得多。Xen在Windows平台下更具优势,但KVM在Linux平台下表现更为出众。
Oracle基于开源项目Xen推出了hypervisor,但缺少其他业界领先的hypervisor厂商提供的众多特性。
简单来说,Citrix XenServer hypervisor是一款稳定、成熟的产品,功能获取成本较低,但在功能特性、性能上要落后于其他行业领先的hypervisor。
谁会最终胜出?
目前,对大多数虚拟化用户来说,VMware可能是***选择,针对微软用户来说Hyper-V是更好的选择。对想省钱的用户来说,如果使用的是Linux平台,那么KVM是一个不错的选择,Xen同时适合Windows和Linux平台。当然每种用例都存在例外,如果当前hypervisor不满足要求,可以选择另一种—但更换hypervisor往往要付出成本。
最有趣的是云正在逼近。云的大规模应用已经给虚拟化领域带来了干扰,其具备的自动化及敏捷性使本地hypervisor所具备的优势黯然失色。容器同样给hypervisor带来了威胁。例如,Intel Clear Container提供了瘦hypervisor而且可能会不再需要ESXi或KVM了。尽管容器仍旧处于从沙箱过渡到主流应用的过程中,但今后使用云管理工具部署容器完全是有可能的。