Linux虚拟化技术Xen和KVM的优势特点对比

标签: Linux 开源世界 旧文存档 虚拟化与云计算 KVM | 发表时间:2012-07-13 10:09 | 作者:谋万世全局者
出处:http://www.ha97.com

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

作为较早出现的虚拟化技术,Xen是“第一类”运行在裸机上的虚拟化管理程序(Hypervisor),也是当前相当一部分商业化运作公司的基础技术,其中包括Citrix系统公司的XenServer和Oracle的虚拟机。Xen技术的倡导者们声称Xen的性能强劲,并且拥有一个广泛的管理工具和能够交付卓越性能,以及其它诸多优点。

但是最近有一些Linux厂商——包括Red Hat和Canonical把基于内核的虚拟机(KVM:Kernel-based Virtual Machine)技术内置在RHEL和Ubuntu中。KVM是一个轻量级的虚拟化管理程序模块,该模块主要来自于Linux内核。虽然只是后来者,但是由于其性能和实施的简易性,以及对Linux重量级的持续支持,所以还是有必要认真对待KVM技术的。

在本期中,两位IT专家将会对Xen和KVM做出比较,并给出各自的理由。

Andi Mann:Xen比KVM优越的六大原因

Sander van Vugt:KVM比Xen能够带来更好的Linux集成

  Xen比KVM优越的六大原因

投稿人:Andi Mann

作为开源的虚拟化技术,对比Xen和KVM可以看到,Xen以6个无与伦比的优势领先:更好的可用资源、平台支持、可管理性、实施、动态迁移和性能基准。

  • 可用资源:Xen的问世要比KVM早4年之久(两者分别是2003年和2007年)。随着Citrix、Novell、Oracle、Sun、Ret Hat和Virtual Iron等公司在市场领域的实施,就比较容易找到精通Xen的IT技术人员,更容易让这些技术人员接受Xen相关的培训、更容易得到Xen的咨询帮助以及获得Xen证书。企业管理协会(EMA:Enterprise Management Associates)2008年这对虚拟化和管理趋势的研究报告表明,这些关键因素占到那些抱怨缺少必要虚拟化技术资源和技术企业的60%。
  • 平台支持:Xen在新版本中支持更多的主机和客体工作环境,包括泛虚拟化技术、硬件辅助支持以及修改过或未修改过的客体操作系统;对UNIX、Linux和Microsoft  Windows的特定支持;包括芯片组,如x86、IA64和AMD、Fujitsu、IBM、Sun等公司的ARM,以及x86/64 CPU商家和Intel嵌入式的支持等。
  • 可管理性:EMA在2009年度针对虚拟系统管理的研究结果表明:对于83%的企业来讲,在选择虚拟化技术过程中,管理是一项非常关键或者重要的因素。在对比Xen和KVM时,就可以看到Xen具有一个更加宽泛的第三方配给、备份、存储管理、P2V、容量规划、性能监控、进程自动化、安全和其它管理规则的社区,比如Citrix、IBM、CA、Novell或者Platespin、Enomaly、Microsoft以及HP等。
  • 实施:无论KVM是“第一类”还是“第二类”,这都是语义上的概念。Xen的运行和管理都是在较低级别的(Ring 0)。甚至对于新虚拟机创建,客体机器并不需要像KVM那样共享内存块、CPU指令或者任何底层的Linux操作系统(虽然偶尔也会越权)。
  • KVM不支持动态迁移:过去在证明VMware ESX比Microsoft Hyper-V优越的最重要的一个观点也同样适用于Xen和KVM的比较,但是这是一个很大的问题。与KVM不同,Xen支持非中断的动态迁移,可以允许动态工作负载平衡和例行维护而几乎没有任何宕机时间。KVM的固有属性决定了其肯定有宕机时间。
  • 性能:大多数Xen和KVM性能基准的对比都表明Xen具有更好的处理性能(接近于本地处理),只有在磁盘I/O方面略逊于KVM。进一步来讲,独立测试表明随着工作负载的增加KVM的性能逐渐下降。通常情况下,在试图支持四个以上的客体虚拟机时就会崩溃。Xen支持一个客体虚拟机的数量呈线性增长,可以支持30个以上工作负载同时运行。

更加深入广泛的Xen与 KVM对比也将会表明Xen在虚拟网络支持、虚拟存储支持、安全增强、高可用性、容错处理、电源管理、HPC或者实时支持、虚拟CPU可扩展性、跨平台兼容性。虚拟机可移植性、虚拟应用设备市场以及已经建立起来的云服务社区等诸多方面都要比KVM优越。因此KVM只是在技术上比较与众不同,并且拥有几个不错的应用场景。但是作为企业级的服务器虚拟化技术,和Xen比起来,KVM尚有较大差距。

  Andi Mann是企业管理协会(EMA:Enterprise Management Associates)IT分析部门中研究系统管理和存储管理的副总裁。Mann在技术和管理领域有20多年的IT经验,对主机、中型机、服务器和台式机上企业形态和软件方面都有深刻理解。Mann是EMA系统管理研究项目的主要负责人,他主要关注数据中心自动化和虚拟化。访问EMA的主页了解更多有关Mann的信息。

  KVM在Linux整合中优于Xen

投稿人:Sander van Vugt

即使没有实施广泛的Xen和KVM性能基准研究,仍然有很多理由足以说明Linux领导者(诸如Red Hat和Ubuntu)对待KVM态度的原因。其中最明显并且最重要的因素就是KVM是Linux内核的一部分,Xen只是一个安装在Linux内核下层的一个产品而已。

为什么这一点如此重要呢?其之所以重要是因为在过去Xen工作环境的补丁包不能够和Linux内核兼容。但是如果实施KVM的话,这个问题就可以很容易地得到解决。另外一个选择KVM的原因是KVM在Linux内核内部部署,这样可以很容易控制虚拟化进程。

Xen的拥护者们声称KVM不如Xen技术成熟,并且缺少某些关键特性,如动态迁移和泛虚拟化支持。确实如此,Xen工作环境中的泛虚拟化技术可以使虚拟机的操作更加高效,因为泛虚拟化技术直接和硬件进行交互。然而使用泛虚拟化技术需要修改操作系统,默认Windows的安装并不支持泛虚拟化工作环境。至于动态迁移,KVM也可以做到,只是需要安装正确的KVM版本而已。KVM过去在动态迁移方面确实存在一个问题,但是现在已经解决了。

从另外一个角度来讲,KVM更加灵活。由于操作系统直接和整合到Linux内核中的虚拟化管理程序交互,所以在任何场景下都可以直接和硬件进行交互,而不需要修改虚拟化的操作系统。这一点非常重要,因为对虚拟机运行来讲KVM可以是一个更快的解决方案。KVM需要Pacifica(AMD)或者Vanderpool(Intel)虚拟化CPU这一事实现在已经不能成为KVM发展的限制条件,因为当前大多数服务器CPU都有这些处理器。

支持不选择KVM虚拟化技术的一个可信原因是Xen相对来讲历史更久一点,产品更加成熟些。但是长远来看,Xen将会使Linux内核的负担越来越重,因为Xen缺少很好的整合(并且以后也不会解决这个问题),尽管Xen的开发者们正在积极地解决这个整合问题。

最后一点是KVM是Linux内核的一部分,而Xen做到最好也无非是整合到Linux中。随着时间的推移,Ret Hat(目前掌握KVM技术),作为Linux企业市场中份额最大的企业,将会使虚拟化技术的后来者——KVM同Xen一样功能齐全。我相信未来虚拟化市场必定是KVM的。

转自:http://www.searchvirtual.com.cn/showcontent_33947.htm

补充:目前国内的企业大都是采用Xen技术运营,特别是几乎所有的云主机服务商,包括阿里云,盛大云,万网云等。

相关 [linux 虚拟化 技术] 推荐:

Linux虚拟化技术Xen和KVM的优势特点对比

- - 服务器运维与网站架构|Linux运维|互联网研究
Linux虚拟化技术的用户目前有两种免费的开源管理程序可以选择:Xen和KVM. 作为较早出现的虚拟化技术,Xen是“第一类”运行在裸机上的虚拟化管理程序(Hypervisor),也是当前相当一部分商业化运作公司的基础技术,其中包括Citrix系统公司的XenServer和Oracle的虚拟机. Xen技术的倡导者们声称Xen的性能强劲,并且拥有一个广泛的管理工具和能够交付卓越性能,以及其它诸多优点.

虚拟化技术对比:Xen vs KVM

- - 操作系统 - ITeye博客
对服务器的虚拟化不知道使用哪个,可以参考这篇文章,包括世纪互联也是用的xen进行虚拟化. OpenStack与KVM相互辉映. OpenStack几乎支持所有的虚拟化管理程序,不论是开源的(Xen与KVM)还是厂商的(Hyper-V与VMware). 但在以前,OpenStack是基于KVM开发的,KVM常常成为默认的虚拟机管理程序.

KVM虚拟化技术发展史及未来

- - 服务器运维与网站架构|Linux运维|互联网研究
2008年9月,红帽收购了一家名叫Qumranet的以色列小公司,由此入手了一个叫做KVM的虚拟化技术(KVM,全称Kernel-based Virtual Machine,意为基于内核的虚拟机). 当时的虚拟化市场上主要以VMware为主,而KVM只是在Ubuntu等非商用发行版上获得了一些关注.

xen、kvm、vmware、hyper-v等虚拟化技术的比较

- - haohtml's blog
最近在实战Xen中,这篇文章是最近在网上看到的,发出来分享一下. xen和kvm,是开源免费的虚拟化软件. vmware是付费的虚拟化软件. hyper-v比较特别,是微软windows 2008 R2附带的虚拟化组件,如果你买了足够的授权,hyper-v(包括hyper-v 2008 core)都可以免费使用.

Google 向新版 Linux 内核贡献技术

- flypen - 谷奥——探寻谷歌的奥秘
本月初刚刚发布的 Linux 2.6.35 版内核中,包含了 RPS 和 RFS 这两项由 Google 贡献的新技术. RPS 的全称是 Receive Packet Steering,这项技术将流入的数据包分布给所有可用的 CPU 去处理,而 RFS (Recevie Flow Steering) 则负责计算哪个核心最适合处理哪项工作.

Linux 中的零拷贝技术,第 2 部分

- _li_ming_ - IBM developerWorks 中国 : 文档库
本系列由两篇文章组成,介绍了当前用于 Linux 操作系统上的几种零拷贝技术,简单描述了各种零拷贝技术的实现,以及它们的特点和适用场景. 第一部分主要介绍了一些零拷贝技术的相关背景知识,简要概述了 Linux 为什么需要零拷贝技术以及 Linux 中都有哪几种零拷贝技术. 本文是本系列文章的第二部分,针对第一部分内容中提到的几种零拷贝技术分别进行更详细的介绍,并对这些零拷贝技术的优缺点进行分析.

Linux 中的零拷贝技术,第 1 部分

- _li_ming_ - IBM developerWorks 中国 : 文档库
本系列由两篇文章组成,介绍了当前用于 Linux 操作系统上的几种零拷贝技术,简单描述了各种零拷贝技术的实现,以及它们的特点和适用场景. 本文是本系列文章的第一部分,主要是介绍一些零拷贝技术的相关背景知识,简要概述了 Linux 为什么需要零拷贝技术以及 Linux 中都有哪几种零拷贝技术.

如何排除Linux故障技术详解

- - ITeye博客
  Linux系统提供了单用户模式(类似Windows安全模式),可以在最小环境中进行系统维护. 在单用户模式(运行级别1)中,Linux引导进入根shell,网络被禁用,只有少数进程运行. 单用户模式可以用来修改文件系统损坏、还原配置文件、移动用户数据等.   以下列举了几个单用户模式修复系统故障的典型案例:.

虚拟化的逆袭:网络虚拟化之OpenFlow和SDN

- - 弯曲评论
云计算的发展,是以虚拟化技术为基础的. 云计算服务商以按需分配为原则,为客户提供具有高可用性、高扩展性的计算、存储和网络等IT资源. 虚拟化技术将各种物理资源抽象为逻辑上的资源,隐藏了各种物理上的限制,为在更细粒度上对其进行管理和应用提供了可能性. 近些年,计算的虚拟化技术(主要指x86平台的虚拟化)取得了长足的发展;相比较而言,尽管存储和网络的虚拟化也得到了诸多发展,但是还有很多问题亟需解决,在云计算环境中尤其如此.

dell T110 安装xen 虚拟化

- - CSDN博客系统运维推荐文章
利用xen安装Windows虚拟机. 由于Windows的引导方式与Linux不同,所以安装过程需要虚拟光驱的支持. 这里介绍利用virt-manager工具安装Windows虚拟机的步骤,这些步骤也可以用于安装Linux虚拟机. 要注意的是,Windows内核无法定制,不支持xen的半虚拟化,因此,必须得到CPU和主板的硬件虚拟化支持,如果所用平台不支持硬件虚拟化,那么安装将失败.