zoukankan      html  css  js  c++  java
  • 虚拟化技术对比:Xen vs KVM

    恒天云:http://www.hengtianyun.com/download-show-id-68.html

    一、说明

        本文主要从功能方面和性能方面对Xen和KVM对比分析,分析出其优缺点指导我们恒天云产品针对不同需求、不同环境下该使用何种虚拟化技术。

    二、优缺点对比

      Xen 优势

      作为开源的虚拟化技术,对比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个以上工作负载同时运行。

      KVM优势

       KVM是Linux内核的一部分,便于安装、升级、维护。

      Ret Hat(目前掌握KVM技术),作为Linux企业市场中份额最大的企业,将会使虚拟化技术的后来者——KVM同Xen一样功能齐全。

    三、性能分析

      性能测试分析详见文档

      “A performance analysis of Xen and KVM hypervisors for hosting the Xen Worlds Project.pdf“

      该文档比较全面的对比了各方面性能

    四、总结                                                 

      综上:目前性能方面、成熟度方面Xen要优于KVM, 这可能是我们目前最关注的。目前公有云厂商亚马逊、阿里云、盛大云、云快线等使用的都是Xen,有比较成熟的解决方案,稳定性也久经考验,所以在一些较大较重要项目中、性能要求较高的项目中建议优先考虑使用Xen。

  • 相关阅读:
    Why Choose Jetty?
    Jetty 的工作原理以及与 Tomcat 的比较
    Tomcat设计模式
    Servlet 工作原理解析
    Tomcat 系统架构
    spring boot 打包方式 spring boot 整合mybaits REST services
    wireshark udp 序列号 User Datagram Protocol UDP
    Maven 的聚合(多模块)和 Parent 继承
    缓存策略 半自动化就是mybaitis只支持数据库查出的数据映射到pojo类上,而实体到数据库的映射需要自己编写sql语句实现,相较于hibernate这种完全自动化的框架我更喜欢mybatis
    Mybatis解决sql中like通配符模糊匹配 构造方法覆盖 mybits 增删改
  • 原文地址:https://www.cnblogs.com/hengtianyun/p/3937134.html
Copyright © 2011-2022 走看看