《KVM实战:原理、进阶与性能调优》一1.3.3 KVM的现状
1.3.3 KVM的现状
至本书写作时,KVM已经10周岁了。10年之间,得益于与Linux天然一体以及Redhat的倾力打造,KVM已经成为Openstack用户选择的最主流的Hypervisor(因为KVM是Openstack的默认Hypervisor)。来自Openstack的调查显示,KVM占到87%以上的部署份额,并且(笔者认为)还会继续增大。可以说,KVM已经主宰了公有云部署的Hypervisor市场;而在私有云部署方面,尤其大公司内部私有云部署,还是VMware的地盘,目前受到HyperV的竞争。
功能上,虚拟化发展到今天,各个Hypervisor的主要功能都趋同。KVM作为后起之秀,并且在公有云上广泛部署,其功能的完备性是毋庸置疑的。并且由于其开源性,反而较少一些出于商业目的的限制,比如一篇文章(ftp://public.dhe.ibm.com/linux/pdfs/Clabby_Analytics_-_VMware_v_KVM.pdf)中比较VMware EXS 与KVM,就是一个例子。
性能上,作为同样开源的Hypervisor,KVM和Xen都很优秀,都能达到原生系统95%以上的效率(CPU、内存、网络、磁盘等benchmark衡量),KVM甚至还略微好过Xen一点点。与微软的Hyper-V相比,KVM似乎略逊于最新的Windows 2016上的HyperV,而好于Windows 2012 R2上的HyperV,但这是微软的一家之言,笔者没有重新测试验证。其他与诸如VMware EXS等的性能比较,网上也可以找到很多,读者可以自行搜索。总的来说,即使各有优劣,虚拟化技术发展到今天已经成熟,KVM也是如此。
1.3.4 KVM的展望
经过10年的发展,KVM已经成熟。那么,接下来KVM会怎样进一步发展呢?
1)大规模部署尚有挑战。KVM是Openstack和oVirt选择的默认Hypervisor,因而实际的广泛部署常常是大规模的(large scale, scalability)。这种大规模,一方面指高并发、高密度,即一台宿主机上支持尽可能多的客户机;另一方面,也指大规模的单个客户机,即单个客户机配备尽可能多的vCPU和内存等资源,典型的,这类需求来自高性能计算(HPC)领域。随着硬件尤其是CPU硬件技术的不停发展(物理的processor越来越多),这种虚拟化的大规模方面的需求也在不停地增大,并且这不是简单数量的增加,这种增加会伴随着新的挑战等着KVM开发者去解决,比如热迁移的宕机时间(downtime)就是其中一例。
2)实时性(Realtime)。近几年一个新的趋势就是NFV(Network Functions Virtualization,网络功能的虚拟化),它指将原先物理的网络设备搬到一个个虚拟的客户机上,以便更好地实现软件定义网络的愿景。网络设备对实时性的要求是非常高的;而不巧,NFV的开源平台OPNFV选择了Openstack,尽管Openstack向下支持各种Hypervisor,但如前文所说,KVM是其默认以及主要部署的选择,所以NFV实时性的要求责无旁贷地落到了KVM头上,NFV-KVM项目应运而生,它作为OPNFV的子项目主要解决KVM在实时性方面受到的挑战。
3)安全是永恒的主题/话题。就像网络病毒永远不停地演变推陈出新一样,新时代的IT架构的主体,云/虚拟化,也会一直受到各类恶意攻击的骚扰,从而陷入道高一尺魔高一丈的循环。Hypervisor的开发者、应用者会一直从如何更好地隔离客户机、更少的Hypervisor干预等方面入手,增加虚拟化的安全性。KVM作为Type 2的Hypervisor,天然地与Host OS有关联,安全性方面的话题更引人注目。同时,硬件厂商如Intel,也会从硬件层面不停地推出新的安全方面的功能(feature),KVM从软件方面也要跟上脚步,使能(enable)之。
4)性能调优。如同一句广告词说的:“进无止境”。一方面,新的功能代码的不停引入总会给性能调优开辟新的空间;另一方面,老的功能的实现也许还有更好的方法。还有,新的硬件功能的出现,也是性能调优永恒的动力源泉。
- 点赞
- 收藏
- 关注作者
评论(0)