几款 Hypervisor 的比较:KVM,Xen,VMware,Hyper-V(转载)

1. 主流虚拟化技术及厂商

  KVM, Xen, VMware and Hyper-V 做了详细的对比:

  • KVM- 基于linux的的开源hypervisor,最初是在2007年2月份融合到linux内核中,现在应该是应用最广泛的开源hypervisor。KVM现在用在Rdhat的一些产品上,如:Redhat Enterprise Virtualization (RHEV).

  • XEN- 同样是一款开源的hypervisor,2003年产生于剑桥大学的研究项目中。它运行在linux上(半虚拟化的hypervisor,dom0作为宿主机,运行Xen平台),最初是由XenSource提供技术支持,2007年被Citrix收购。

  • VMware- 并不是hypervisor,而是公司的名字,通常使用的vSphere使用了VMware’s ESXi hypervisor. VMware’s hypervisor是非常成熟稳定的。

  • vHpyer-V – 是一款有微软提供的商业化的hypervisor,运行在Windows平台上,但是内部可以运行任何其他的操作系统,并且支持多种硬件平台。、

2. KVM和Xen的区别

Linux虚拟化技术的用户目前有两种免费的开源管理程序可以选择:
Xen和KVM

  • 硬件支持

  KVM是一个轻量级的虚拟化管理程序模块,该模块主要来自于Linux内核。KVM是一个全虚拟化的解决方案。可以在x86架构的计算机上实现虚拟化功能。但KVM需要CPU中虚拟化功能的支持,只可在具有虚拟化支持的CPU上运行,即具有VT功能的Intel CPU和具有AMD-V功能的AMD CPU。

  Xen 也是Linux下的一个虚拟化解决方案,也将很快被编入内核中。Xen的实现方法是运行支持Xen功能的kernel,这个kernel是工作在 Xen的控制之下,叫做Domain0,使用这个kernel启动机器后,你可以在这个机器上使用qemu软件,虚拟出多个系统。

  • 内核支持

  KVM由以色列公司Qumranet开发,已经被Linux核心组织放入Linux的内核里面,其使用的x86处理器至少需要包含其中一项硬件辅助虚拟化技术(Intel-VT或AMD-V)。

  而 Xen是一个外部的Hypervisor程序(虚拟机管理程序);它能够控制虚拟机和给多个客户机分配资源,在KVM被写入Linux内核后,估计Xen 很难再被写入内核;另一方面,KVM是Linux的一部分, 可使用通常的Linux调度器和内存管理. 这意味着KVM更小更易使用。

  • 支持的虚拟化技术

  此外,Xen同时支持全虚拟化和准虚拟化(需要修改客户机操作系统,而修改过的客户机操作系统能有更好的性能),KVM当前不支持准虚拟化。

  • 更新版本:

  Xen的缺点是如果你需要更新Xen的版本,你需要重新编译整个内核,而且,稍有设置不慎,系统就无法启动。
相比较,KVM就简化的多了。它不需要重新编译内核,也不需要对当前kernel做任何修改,它只是几个可以动态加载的.ko模块。它结构更加精简、代码量更小。所以,出错的可能性更小。并且在某些方面,性能比Xen更胜一筹。


KVM和Xen的区别
几款 Hypervisor 的比较:KVM,Xen,VMware,Hyper-V

发表评论

邮箱地址不会被公开。 必填项已用*标注