《2022年虚拟化技术概览归类 .pdf》由会员分享,可在线阅读,更多相关《2022年虚拟化技术概览归类 .pdf(23页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、虚拟化技术概览您的评价 : 收藏该经验阅读目录1. 全虚拟化( Full Virtualization)2. 半虚拟化( Para Virtualization)1. KVM2. Xen3. Hyper-V4. Vmware ESXI5. QEMU6. KVM 和 QEMU的关系1. Linux虚拟化技术Xen 和 KVM 的优势特点对比2. 虚拟化 Xen 和虚拟化 KVM 在 Linux 下的区别3. VPS 选择本篇文章所有资料均收集自网上,本文仅做了一下梳理和汇总。本文首先介绍了虚拟化技术:全虚拟化和半虚拟化,然后介绍了KVM 、 Xen 、 Hyper-V、VMWARE EXSI的原
2、理和架构,接着重点对KVM 和 Xen 做了比较,并对两者的未来发展提供了一些业界人士的观点,最后对 Google 、Amazon 、IBM 、 Microsoft的云计算产品进行了介绍。一、虚拟化技术:全虚拟化、半虚拟化1. 全虚拟化( Full Virtualization) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 23 页 - - - - - - - - - 全虚拟化也成为原始虚拟化技术,该模型使用虚拟机协调guest操作系统和原始硬件,VMM在 guest
3、操作系统和裸硬件之间用于工作协调,一些受保护指令必须由Hypervisor(虚拟机管理程序)来捕获处理。全虚拟化模型全虚拟化的运行速度要快于硬件模拟,但是性能方面不如裸机,因为Hypervisor需要占用一些资源回到顶部2. 半虚拟化( Para Virtualization)半虚拟化是另一种类似于全虚拟化的技术,它使用Hypervisor分享存取底层的硬件,但是它的 guest操作系统集成了虚拟化方面的代码。该方法无需重新编译或引起陷阱,因为操作系统自身能够与虚拟进程进行很好的协作。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - -
4、- 名师精心整理 - - - - - - - 第 2 页,共 23 页 - - - - - - - - - 半虚拟化模型半虚拟化需要guest操作系统做一些修改,使 guest操作系统意识到自己是处于虚拟化环境的,但是半虚拟化提供了与原操作系统相近的性能。二、 KVM 、Xen 、Hyper-V、VMware EXSI原理和架构回到顶部1. KVM KVM 全称是 Kernel-based Virtual Machine,即基于内核的虚拟机。KVM 是集成到Linux 内核的 Hypervisor,是 X86 架构且硬件支持虚拟化技术(Intel VT或 AMD-V )的 Linux 的全虚拟
5、化解决方案。它是Linux的一个很小的模块,利用Linux做大量的事,如任务调度、内存管理与硬件设备交互等。KVM 虚拟化平台架构名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 23 页 - - - - - - - - - KVM 是一个独特的管理程序,通过将KVM 作为一个内核模块实现,在虚拟环境下Linux 内核集成管理程序将其作为一个可加载的模块可以简化管理和提升性能。在这种模式下, 每个虚拟机都是一个常规的Linux 进程,通过Linux 调度程序进行调度。回到顶
6、部2. Xen Xen 是第一类运行再裸机上的虚拟化管理程序(Hypervisor)。它支持全虚拟化和半虚拟化,Xen 支持 hypervisor和虚拟机互相通讯,而且提供在所有Linux 版本上的免费产品,包括 Red Hat Enterprise Linux和 SUSE Linux Enterprise Server。Xen 最重要的优势在于半虚拟化,此外未经修改的操作系统也可以直接在xen 上运行 (如 Windows),能让虚拟机有效运行而不需要仿真,因此虚拟机能感知到hypervisor,而不需要模拟虚拟硬件,从而能实现高性能。1)XEN 的发展与现状XEN 最初是作为剑桥大学的一个
7、项目,目前XEN.ORG 社区在负责它的开发及维护,它已经在开源社区中得到了极大的发展。XEN 是一种直接运行在硬件上一层软件,它可以让电脑硬件上同时跑多个用户的操作系统。由于对x86, x86-64, Itanium, Power PC, 和 ARM 这些处理器的支持,所以XEN 管理工具可以支持的操作系统有Linux, NetBSD,FreeBSD ,Solaris, Windows 和其他一些运行在XEN 上的正常的操作系统。如下图所示XEN 在系统中的位置:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 -
8、 - - - - - - 第 4 页,共 23 页 - - - - - - - - - XEN 在系统的位置Xen 目前具有以下几种产品:Xen Hypervisor 后面会详细讲解,在此不作赘述。会导致转换有问题;XCI 种嵌入式管理工具,基于Xen Hypervisor 的基础之上修改而来,相对于标准的Xen Hypervisor,它使用的库更小,目前主要用在笔记本以及一些移动设备上,可以使用Intel 或者AMD 的架构;Xen Cloud Platform 目前它为ISVs 和服务提供商提供了一套基于强大的管理栈的云架构平台,这个栈是基于开放的标准API;还有一些Xen.org 上的项
9、目,再此就不一一列举了。2)XEN 体系结构名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 23 页 - - - - - - - - - XEN 体系结构图一个 XEN 虚拟机环境主要由以下几部分组成:XEN Hypervisor;Domain 0 Domain Management and Control(XEN DM&C);Domain U Guest(Dom U) 1.PV Guest 2.HVM Guest 下图显示除了各部分之间的关系:名师资料总结 - - -精
10、品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 23 页 - - - - - - - - - Xen 三部分组成之间关系图XEN Hypervisor :XEN Hypervisor 是介于操作系统和硬件之间的一个软件描述层。它负责在各个虚拟机之间进行 CPU 调度和内存分配。 XEN Hypervisor 不仅抽象出虚拟机的硬件,同时还控制着各个虚拟机的执行。XEN Hypervisor 不会处理网络、存储设备、视频以及其他I/O. Domain 0:Domain 0 是一个修改过的Linux
11、kernel,是唯一运行在Xen Hypervisor 之上的虚拟机,它拥有访问物理I/O 资源的权限, 同时和系统上运行的其他虚拟机进行交互。Domain 0 需要在其它Domain 启动之前启动。Domain U:运 行在Xen Hypervisor 上的所有半虚拟化(paravirtualized)虚拟机被称为“Domain U PV Guests”,其上运行着被修改过内核的操作系统,如Linux 、Solaris 、FreeBSD 等其它 UNIX 操作系统。所有的全虚拟化虚拟机被称为“Domain U HVM Guests”,其上运行着不用修改内核的操作系统,如Windows 等。名
12、师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 23 页 - - - - - - - - - 3)XEN 工作原理上面我们针对Xen 的体系结构进行了简单的描述,我们知道Xen 主要由Xen Hypervisor,Domain0,DomainU 三部分组成。 下面通过Domain 0 与 Domain U 的通信以及这三部分的交互来探讨一下Xen 的工作原理。之前我们已经提到过Domain U 分为 PV 客户系统和HVM 客户系统两种,我们首先讨论一下PV 客户系统,也就
13、是半虚拟化操作系统工作原理。首 先我们需要知道在Domain 0 中有两个驱动Network Backend Driver 和 Block Backend Driver,它们分别用来处理来自Domain U 的网络和本地磁盘请求。由于Xen Hypervisor 不会支持网络和磁盘请求的,因此一个PV(半虚拟化)客户系统必须通过和Xen Hypervisor、Domain 0 通信,从而来实现网络和磁盘请求。由于Xen 文档中已经探讨过PV 客户系统如何将一个数据写到本地硬盘,下面我们就来讨论一下PV 客户系统如何将一个数据发送到网络中去。在这之前我们首先要了解到一点,那就是Domain U
14、PV Guest 中也包括两个驱动“PV Network Driver”和“ PV Block Driver”,它们分别也是用来处理发送网络和本地磁盘请求用的,这与Domain 0 中的两个驱动是相对应的。当一个PV 客户系统的网络设备驱动程序接收到一个发送数据请求的时候,并且通过Xen Hypervisor 发送数据到本地网络设备(网卡之类的设备)中,这个网络设备是和Domain 0 共享的。在Domain 0 和 Domain U 之间存在一个事件通道(event channel),通过该通道二者进行异步的域间中断通信。Domain 0 会接收到一个来自Xen Hypervisor 的中断
15、,触发PV Network Backend Driver 访问上述网络设备,读取来自PV 客户系统的数据,然后将这些数据发送出去。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 23 页 - - - - - - - - - 下图中事件通道表示为连接Domain 0 与 Domain U 的一个区域,这是系统工作流的一个简化。事实上事件通道运行在Xen Hypervisor 中,通过Xenstored(Xenstored 维护一个信息档案, 包括内存和建立在Domain 0
16、 与 Domain U 之间的事件通道。 Domain 0 通过改变这个档案来设置和其他虚拟机的设备通道)中的特定中断实现,提供 Domain 0 与 Domain U 之间的快速共享网络设备,见下图。Domain 0 与 Domain U PV Guest 通信示意图上面我们已经分析了PV 客户系统的工作原理,下面我们再简要的介绍一下HVM 客户系统的工作原理。由 于一个HVM Guests 虚拟机中没有上面提到得PV driver,所以Xen 在 Domain 0 中为每一个HVM Guest 都启动一个守护进程Qemu-dm 处理来自客户系统的网络和磁盘请求,所以当一个HVM Guest
17、 有相应的网络和I/O 请求的时候,它就会直接与Domain0 中和它相对应的Qemu-dm 来进行交互,通过Domain 0 最终达到访问网络设备或者磁盘的目的。见下图:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 23 页 - - - - - - - - - Domain 0 与 Domain U HVM Guest 通信示意图Xen 虚拟机安装后在查看虚拟机时会发现有一个Domain-0的虚拟机。1 2 #查看虚拟机# xm list 回到顶部3. Hyper-V
18、 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 23 页 - - - - - - - - - Hyper-V 体系结构图Hyper-V 是微软提出的一种系统管理程序虚拟化技术,采用微内核的架构,兼顾了安全性和性能的要求。Hyper-V 底层的Hypervisor 运行在最高的特权级别下,微软将其称为ring -1 (而Intel 则将其称为root mode),而虚机的OS 内核和驱动运行在ring 0 ,应用程序运行在ring 3 下,这种架构就不需要采用复杂的BT
19、(二进制特权指令翻译)技术,可以进一步提高安全性。从架构上讲Hyper-V 只有“硬件 Hyper-V 虚拟机” 三层,本身非常小巧,代码简单,且不包含任何第三方驱动,所以安全可靠、执行效率高,能充分利用硬件资源,使虚拟机系统性能更接近真实系统性能。Hyper-V 支持分区层面的隔离。分区是逻辑隔离单位,受虚拟机监控程序支持,并且操作系统在其中执行。Microsoft 虚拟机监控程序必须至少有一个父/ 根分区,用于运行64 位版本的Windows Server 2008 操作系统。虚拟化堆栈在父分区中运行,并且可以直接访问硬件设备。 随后,根分区会创建子分区用于承载来宾操作系统。根分区使用虚拟
20、化调用应用程序编程接口(API) 来创建子分区。分区对物理处理器没有访问权限,也不能处理处理器中断。相反,它们具有处理器的虚拟视图,并运行于每个来宾分区专用的虚拟内存地址区域。虚拟机监控程序负责处理处理器中断,并将其重定向到相应的分区。Hyper-V 还可以通过输入输出内存管理单元(IOMMU) 利用硬件加速来加快各个来宾虚拟地址空间相互之间的地址转换。IOMMU 独立于CPU 使用的内存管理硬件运行,并用于将物理内存地址重新映射到子分区使用的地址。从系统的结构图,我们可以看出来Hyper-V 与 Xen 的架构很相似。回到顶部名师资料总结 - - -精品资料欢迎下载 - - - - - -
21、- - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 23 页 - - - - - - - - - 4. Vmware ESXI Vmware ESXI 体系结构图由上图我们可以看出来管理工具也是直接嵌入到了ESXi vmKernel 中,没有再分化出单独的管理工具,这一点与Xen 是相区别的。回到顶部5. QEMU QEMU 是一套由Fabrice Bellard所编写的模拟处理器的自由软件。它与Bochs ,PearPC近似,但其具有某些后两者所不具备的特性,如高速度及跨平台的特性。经由kqemu这个开源的加速器,QEMU 能模拟至接近
22、真实电脑的速度。回到顶部6. KVM和 QEMU的关系名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 23 页 - - - - - - - - - 准 确来说,KVM 是 Linux kernel的一个模块。 可以用命令modprobe去加载 KVM 模块。加载了模块后,才能进一步通过其他工具创建虚拟机。但仅有KVM 模块是远远不够的,因为用户无法直接控制内核模块去作事情,你还必须有一个运行在用户空间的工具才行。这个用户空间的工具, kvm 开发者选择了已经成型的开源虚
23、拟化软件QEMU 。 说起来 QEMU也是一个虚拟化软件。它的特点是可虚拟不同的CPU 。比如说在 x86 的 CPU 上可虚拟一个Power的 CPU ,并可利用它编译出可运行在 Power上的程序。 KVM 使用了 QEMU 的一部分,并稍加改造,就成了可控制KVM 的用户空间工具了。所以你会看到,官方提供的KVM 下载有两大部分 (qemu和 kvm) 三个文件 (KVM 模块、QEMU 工具以及二者的合集)。也就是说,你可以只升级KVM 模块,也可以只升级QEMU 工具。这就是KVM 和 QEMU 的关系。KVM 和 QEMU关系三、 KVM 和 Xen 技术对比回到顶部名师资料总结
24、- - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 23 页 - - - - - - - - - 1. Linux虚拟化技术Xen 和 KVM的优势特点对比项目Xen KVM 问世时间2003 年2007 年支持企业Citrix 、Novell 、Oracle 、Sun 、Ret Hat (RHEL5 )和 Virtual Iron Redhat 、 Ubuntu等支持的虚拟化技术全虚拟化、半虚拟化全虚拟化支持架构x86 、IA64 和 AMD 、Fujitsu 、IBM 、Sun 等公
25、司的 ARM ,以及 x86/64 CPU商家和 Intel嵌入式的支持支持虚拟化的CPU 支持操作系统UNIX 、Linux 和Microsoft Windows UNIX 、 Linux 和Microsoft Windows 动态迁移支持支持(以前不支持)内核支持需要对内核打补丁内置在内核中上面这个表有个关键的项目未列出,那就是性能, 文章中并没有基准测试,因此并无准确的对比。下面是 Linux虚拟化技术Xen 和 KVM的优势特点对比文章内容:Linux 虚拟化技术的用户目前有两种免费的开源管理程序可以选择:Xen 和 KVM 。名师资料总结 - - -精品资料欢迎下载 - - - -
26、- - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 23 页 - - - - - - - - - 作为较早出现的虚拟化技术,Xen 是“第一类”运行在裸机上的虚拟化管理程序(Hypervisor),也是当前相当一部分商业化运作公司的基础技术,其中包括Citrix 系统公司的 XenServer和 Oracle 的虚拟机。 Xen 技术的倡导者们声称Xen 的性能强劲,并且拥有一个广泛的管理工具和能够交付卓越性能,以及其它诸多优点。但是最近有一些Linux 厂商包括Red Hat和 Canonical把基于内核的虚拟机(KVM :K
27、ernel-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 作为开源的虚拟化技术,对比X
28、en 和 KVM 可以看到, Xen 以 6 个无与伦比的优势领先:更好的可用资源、平台支持、可管理性、实施、动态迁移和性能基准。可用资源 :Xen 的问世要比KVM 早 4 年之久(两者分别是2003 年和 2007 年)。随着 Citrix 、 Novell 、Oracle 、Sun 、Ret Hat和 Virtual Iron等公司在市场领域的实施, 就比较容易找到精通Xen 的 IT 技术人员, 更容易让这些技术人员接受Xen相关的培训、 更容易得到Xen 的咨询帮助以及获得 Xen 证书。企业管理协会(EMA :名师资料总结 - - -精品资料欢迎下载 - - - - - - - -
29、 - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 23 页 - - - - - - - - - EnterpriseManagement Associates)2008 年这对虚拟化和管理趋势的研究报告表明,这些关键因素占到那些抱怨缺少必要虚拟化技术资源和技术企业的60% 。平台支持 :Xen 在新版本中支持更多的主机和客体工作环境,包括泛虚拟化技术、硬件辅助支持以及修改过或未修改过的客体操作系统;对UNIX 、Linux 和MicrosoftWindows的特定支持;包括芯片组,如x86 、IA64 和 AMD 、Fujitsu 、IBM
30、、Sun 等公司的 ARM ,以及 x86/64 CPU商家和 Intel 嵌入式的支持等。可管理性 :EMA 在 2009 年度针对虚拟系统管理的研究结果表明:对于83% 的企业来讲,在选择虚拟化技术过程中,管理是一项非常关键或者重要的因素。在对比Xen 和 KVM 时,就可以看到Xen 具有一个更加宽泛的第三方配给、备份、存储管理、P2V 、容量规划、性能监控、进程自动化、安全和其它管理规则的社区,比如Citrix 、IBM 、CA 、Novell或者 Platespin 、 Enomaly 、 Microsoft以及 HP 等。实施 :无论 KVM 是“第一类”还是“第二类”,这都是语义
31、上的概念。Xen 的运行和管理都是在较低级别的(Ring 0 )。甚至对于新虚拟机创建,客体机器并不需要像 KVM 那样共享内存块、CPU 指令或者任何底层的Linux 操作系统(虽然偶尔也会越权)。KVM不支持动态迁移:过去在证明VMware ESX比 Microsoft Hyper-V优越的最重要的一个观点也同样适用于Xen 和 KVM 的比较,但是这是一个很大的问题。与 KVM 不同, Xen 支持非中断的动态迁移,可以允许动态工作负载平衡和例行维护而几乎没有任何宕机时间。KVM 的固有属性决定了其肯定有宕机时间。性能 : 大多数 Xen 和 KVM 性能基准的对比都表明Xen 具有更好
32、的处理性能(接近于本地处理),只有在磁盘I/O 方面略逊于KVM 。进一步来讲,独立测试表明随着工作负载的增加KVM 的性能逐渐下降。通常情况下,在试图支持四个以上的客名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 23 页 - - - - - - - - - 体虚拟机时就会崩溃。Xen 支持一个客体虚拟机的数量呈线性增长,可以支持30个以上工作负载同时运行。更加深入广泛的Xen 与 KVM 对比也将会表明Xen 在虚拟网络支持、虚拟存储支持、安全增强、高可用性、容错处
33、理、电源管理、HPC 或者实时支持、虚拟CPU 可扩展性、跨平台兼 容性。虚拟机可移植性、虚拟应用设备市场以及已经建立起来的云服务社区等诸多方面都要比 KVM 优越。因此KVM 只是在技术上比较与众不同,并且拥有几个不错的应用场景。但是作为企业级的服务器虚拟化技术,和Xen 比起来, KVM 尚有较大差距。 Andi Mann是企业管理协会(EMA :Enterprise Management Associates)IT分析部门中研究系统管理和存储管理的副总裁。Mann在技术和管理领域有20 多年的 IT经验,对主机、中型机、服务器和台式机上企业形态和软件方面都有深刻理解。Mann是EMA 系
34、统管理研究项目的主要负责人,他主要关注数据中心自动化和虚拟化。访问EMA的主页了解更多有关Mann的信息。 KVM在 Linux整合中优于Xen投稿人: Sander van Vugt 即使没有实施广泛的Xen 和 KVM 性能基准研究,仍然有很多理由足以说明Linux 领导者(诸如 Red Hat和 Ubuntu)对待 KVM 态度的原因。其中最明显并且最重要的因素就是KVM 是 Linux 内核的一部分,Xen 只是一个安装在Linux 内核下层的一个产品而已。为什么这一点如此重要呢?其之所以重要是因为在过去Xen 工作环境的补丁包不能够和Linux 内核兼容。但是如果实施KVM 的话,这
35、个问题就可以很容易地得到解决。另外一个选择 KVM 的原因是KVM 在 Linux 内核内部部署,这样可以很容易控制虚拟化进程。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 23 页 - - - - - - - - - Xen 的拥护者们声称KVM 不如 Xen 技术成熟,并且缺少某些关键特性,如动态迁移和泛虚拟化支持。确实如此,Xen 工作环境中的泛虚拟化技术可以使虚拟机的操作更加高效,因为泛虚拟化技术直接和硬件进行交互。然而使用泛虚拟化技术需要修改操作系统,默认W
36、indows的安装并不支持泛虚拟化工作环境。至于动态迁移,KVM 也可以做到,只是需要安装正确的KVM 版本而已。 KVM 过去在动态迁移方面确实存在一个问题,但是现在已经解决了。从另外一个角度来讲,KVM 更加灵活。由于操作系统直接和整合到Linux 内核中的虚拟化管理程序交互,所以在任何场景下都可以直接和硬件进行交互,而不需要修改虚拟化的操作系统。 这一点非常重要,因为对虚拟机运行来讲KVM 可以是一个更快的解决方案。KVM需要 Pacifica (AMD )或者 Vanderpool(Intel )虚拟化 CPU 这一事实现在已经不能成为KVM 发展的限制条件,因为当前大多数服务器CPU
37、 都有这些处理器。支持不选择KVM 虚拟化技术的一个可信原因是Xen 相对来讲历史更久一点,产品更加成熟些。但是长远来看,Xen 将会使 Linux 内核的负担越来越重,因为Xen 缺少很好的整合(并且以后也不会解决这个问题),尽管Xen 的开发者们正在积极地解决这个整合问题。最后一点是KVM 是 Linux 内核的一部分,而Xen 做到最好也无非是整合到Linux 中。随着时间的推移, Ret Hat (目前掌握KVM 技术),作为Linux 企业市场中份额最大的企业,将会使虚拟化技术的后来者KVM 同 Xen 一样功能齐全。我相信未来虚拟化市场必定是 KVM 的。转自: http:/ 补充
38、:目前国内的企业大都是采用Xen 技术运营,特别是几乎所有的云主机服务商,包括阿里云,盛大云,万网云等。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 18 页,共 23 页 - - - - - - - - - 回到顶部2. 虚拟化 Xen 和虚拟化 KVM在 Linux下的区别KVM 和 Xen 的核心差别在哪里呢?1)关于 XEN 和 KVM KVM 是一个全虚拟化的解决方案。可以在x86 架构的计算机上实现虚拟化功能。但KVM需要 CPU 中虚拟化功能的支持,只可在具有虚拟化支
39、持的CPU 上运行, 即具有 VT 功能的Intel CPU和具有 AMD-V功能的 AMD CPU 。Xen 也是 Linux 下的一个虚拟化解决方案,也将很快被编入内核中。Xen 的实现方法是运行支持 Xen 功能的 kernel ,这个 kernel是工作在Xen 的控制之下,叫做Domain0,使用这个 kernel启动机器后,你可以在这个机器上使用qemu软件,虚拟出多个系统。2)Xen 和 KVM对比Xen 的缺点是如果你需要更新Xen 的版本,你需要重新编译整个内核,而且,稍有设置不慎,系统就无法启动。相比较,KVM 就简化的多了。 它不需要重新编译内核,也不需要对当前kerne
40、l做任何修改,它只是几个可以动态加载的.ko 模块。它结构更加精简、代码量更小。所以,出错的可能性更小。并且在某些方面,性能比Xen 更胜一筹。KVM 由以色列公司Qumranet开发,已经被 Linux 核心组织放入Linux 的内核里面, 其使用的 x86 处理器至少需要包含其中一项硬件辅助虚拟化技术(Intel-VT或 AMD-V )。而 Xen 是一个外部的Hypervisor程序(虚拟机管理程序);它能够控制虚拟机和给多个客户机分配资源,在KVM 被写入 Linux 内核后, 估计 Xen 很难再被写入内核;另一方面,名师资料总结 - - -精品资料欢迎下载 - - - - - -
41、- - - - - - - - - - - - 名师精心整理 - - - - - - - 第 19 页,共 23 页 - - - - - - - - - KVM 是 Linux 的一部分 , 可使用通常的Linux 调度器和内存管理. 这意味着KVM 更小更易使用。此外, Xen 同时支持全虚拟化和准虚拟化(需要修改客户机操作系统,而修改过的客户机操作系统能有更好的性能),KVM 当前不支持准虚拟化。回到顶部3. VPS 选择找到 VPS OPENVZ平台和 KVM 、Xen 、VMware平台区别,就知道如何选择VPS 了。购 买 VPS 时经常看到有很多不同的平台,像OPENVZ 、KVM
42、 、Xen 、VMware ,近年来又有了云主机云VPS。对于初次接触VPS 的人来说,如何挑选 VPS 平台成了一件令人头疼的事。正因为有这样的困惑,很多VPS 商干脆不再提及VPS 究竟使用了什么平台。但是仍然有很多的VPS 商提供了多种不同的 VPS 平台供用户选择,价格不一配置不一。那么这些不同的VPS 平台区别和共同点是什么呢?今天看到一篇英文文章,简要的描述了这些平台的区别,这里拿过来作为VPS 平台学习笔记和常识来给自己扫下盲,也给被这些平台搞的手足无措的朋友参个考。OPENVZ : 这个平台是最便宜的VPS 平台, 在各个 vps 商哪里都是价格最低的。OPENVZ本身运行在l
43、inux之上,它通过自己的虚拟化技术把一个服务器虚拟化成多个可以分别安装操作系统的实例,这样的每一个实体就是一个VPS,从客户的角度来看这就是一个虚拟的服务器,可以等同看做一台独立的服务器。 OPENVZ 虚拟化出来的VPS 只能安装linux操作系统,不能安装windows系统,比如Centos 、Fedora 、 Gentoo 、Debian等。不能安装 windows操作系统是openvz的第一个缺点,需要使用windows平台的用户不能使用 OPENVZ VPS 。OPENVZ 的第二个缺点是OPENVZ 不是完全的虚拟化,每个VPS 账名师资料总结 - - -精品资料欢迎下载 - -
44、 - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 20 页,共 23 页 - - - - - - - - - 户共用母机内核,不能单独修改内核。好在绝大多少用户根本不需要修改内核,所以这个缺点对多数人可以忽略不计。而这一点也正是openvz的优点,这一共用内核特性使得openvz的效率最高,超过KVM 、Xen 、 VMware等平台。在不超售的情况下,openvz是最快速效率最高的VPS 平台。KVM 、Xen 、VMware:这几个 VPS 平台可以归为一类,它们在虚拟化母机时,是完全的虚拟化,各个VPS 示例之间不共用母机内核
45、,各自都是独立的,几乎所有的操作系统都可以安装到这些被虚拟化出来的VPS 上。完全的虚拟化使得这些平台的VPS 效率上要低于OPENVZ 。但由于其完全的虚拟化,同一母机上的各个VPS 之间几乎没有相互干扰,而OPENVZ 则取决于VPS 是否超售,如果openvz VPS被超售,则性能会受到影响。如果位于同一母机上的openvz VPS有滥用资源行为,将会影响到其它VPS 的性能。 OPENVZ 的这一特点和虚拟主机很类似。虚拟主机就是完全共用虚拟主机母机的资源,虚拟主机的性能受到同一母机上其它虚拟主机的影响最大。OPENVZ 则比虚拟主机要好很多。KVM 、Xen 、VMware平台的 V
46、PS 则几乎完全不受其它VPS 账户的影响。从以上分析可以看出,在不超售的情况OPENVZ的性价比最高:价格低、效率高。但容易受其它同一母机的VPS 影响。当然如果可以接受虚拟主机的话用openvz VPS也就可以接受,因为虚拟主机之间的影响那才叫大。而像KVM 、Xen 、VMware这样的平台是今后VPS 的发展方向,因其各个VPS 之间独立性好过 OPENVZ ,所以有很多主机商不再提供OPENVZ VPS 。但是因为OPENVZ 价格低廉效率好速度快,OPENVZ仍是最受欢迎的低价 VPS 首选。这里再说说什么是云VPS。云的概念到现在仍不统一,最被认可的解释是:比传统VPS使用了更多
47、的数据存储硬件和技术的VPS,比如在数据备份、硬件冗余等方面使用更大的名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 21 页,共 23 页 - - - - - - - - - 磁盘阵列、服务器的冗余备份、失败自动倒换等。云VPS 可以在数据安全性和业务稳定性方面较有保证一些。对于大多数网站而言。传统的VPS 已经足够可以应付。VPS OPENVZ平台和 KVM 、Xen 、 VMware平台区别讲述完毕。通过自己的笔记感觉自己对这些平台优缺点有了个大概的了解,在选择VPS 时就有了
48、大致的方向。四、 KVM or XEN?下面这些观点来自于KVM or XEN ? 哪个更好? 。Xen 现阶段在稳定和功能上略胜一筹。KVM 获得的社区支持更多。昨天在 Ubuntu上想安装 Xen ,发现原来的那些链接和很多安装方法改变了,看来被商业公司收购之后,Xen 会在各方面有所改变。虽然KVM 现在还无法和Xen 相比,但是其植入Linux 内核,以及被社区支持,让我更看好它的未来。开源社区抛弃xen ,就像抛弃openoffice一样。 Xen 如果要发展可能来自citrix oracle的支持。在开源社区xen 的式微是不可避免。redhat ,suse ,ubuntu已经处于
49、转换中。我看到的方向也是KVM 。IBM 丢弃 Xen 用 KVM ,Ubuntu丢弃 Xen 用 KVM 。Redhat就更不用说了, 当然支持自家的KVM 。 KVM 完全开源,而Xen 只有核才开源。Citrix 指望 Xen 及外围工具挣钱呢。KVM 最大的优势是:随着kernel的更新Xen :最大的弊端是恰好是Dom0 不能用最新的kernel ,kernel 3.0之后估计会好很多还是要多看看应用场景,IO 问题是不是关键, XEN 和 KVM 的混合设计可根据业务场景的技术层面关注点来设计,简单来看还是KVM 更好,但毕竟市场份额现有的名师资料总结 - - -精品资料欢迎下载
50、- - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 22 页,共 23 页 - - - - - - - - - 还是 XEN 的高,有点类似于.NET 刚出来时vs JavaEE 的感觉,还是需要一定的应用历程才能发展起来的未来趋势,应该是KVM ,但是现在最成熟,还是Xen 。五、 Google、Amazon、IBM 、Microsoft 等厂商云计算产品介绍虚拟机迁移技术漫谈,第1 部分剖析开源云现实中的开放源码云计算,第1 部分 : 并不是所有云都相同六、参考资料 Linux 虚拟化技术Xen 和 KVM 的优势特点对比虚