1.5 其他虚拟化技术介绍
前面几小节简单介绍了Xen、KVM、Red Hat RHEV几种虚拟化技术,其中Xen和KVM都是开源的,RHEV也是在KVM技术的基础上扩展其功能的。Xen和KVM作为虚拟化技术中两个最著名的开源虚拟机,开放源代码的好处在于有人数庞大的开发社区作为支撑,同时源代码公开也有利于人们学习和研究虚拟机的具体实现。但是,把虚拟机作为商品出售给终端用户,就需要一些商业化的虚拟机解决方案。下面简单介绍常见的一些商业化公司的虚拟化技术。
1.5.1 VMware
VMware公司创办于1998年,从公司的名称就可以看出,这是一家专注于提供虚拟化解决方案的公司。VMware公司很早就预见到虚拟化在未来数据中心中的核心地位,因此有针对性地开发虚拟化软件,从而抓住了21世纪初虚拟化兴起的大潮,成为虚拟化业界的标杆。VMware公司从创办至今,一直占据着虚拟化软件市场的最大份额,是毫无争议的龙头老大。VMware公司作为最成熟的商业虚拟化软件提供商,其产品线是业界覆盖范围最广的。接下来对VMware的主要产品进行简单的介绍。
1.VMware Workstation
VMware Workstation是VMware公司销售的运行于台式机和工作站上的虚拟化软件,也是VMware公司第一个面市的产品(1999年5月)。该产品最早采用了VMware在业界知名的二进制翻译技术,在X86 CPU硬件虚拟化技术还未出现之前,为客户提供了纯粹的基于软件的全虚拟化解决方案。作为最初的拳头产品,VMware公司投入了大量的资源对二进制翻译进行优化,其二进制翻译技术带来的虚拟化性能甚至超过第一代的CPU硬件虚拟化产品。该产品如同KVM,是“类型二”虚拟机,需要在宿主操作系统之上运行。
2.VMware ESX Server
ESX服务器(一种能直接在硬件上运行的企业级的虚拟平台)是虚拟的SMP,它能让一个虚拟机同时使用4个物理处理器,和VMFS一样,它能使多个ESX服务器分享块存储器。该技术还提供一个虚拟中心来控制和管理虚拟化的IT环境:DRS从物理处理器创造资源工具;HA提供从硬件故障自动恢复功能;综合备份可使LAN-Free自动备份虚拟机器;VMotion存储器可允许虚拟机硬盘自由移动;更新管理器自动更新修改补丁和更新管理;能力规划能使VMware的服务提供商执行能力评估;转换器把本地和远程物理机器转换到虚拟机器;实验室管理可自动化安装、捕捉、存储和共享多机软件配置;ACE允许桌面系统管理员对虚拟机应用统一的企业级IT安全策略,以防止不可控台式计算机带来的风险。虚拟桌面基础设施可主导个人台式计算机在虚拟机运行的中央管理器;虚拟桌面管理是联系用户到数据库中的虚拟计算机的桌面管理服务器;VMware生命管理周期可通过虚拟环境提供控制权。
1.5.2 VirtualBox
Oracle VirtualBox是由德国Innotek软件公司出品的虚拟机软件,现在由甲骨文Oracle公司进行开发,是甲骨文公司XVM虚拟化平台技术的一部分。它提供使用者在32位或64位的Windows、Solaris及Linux操作系统上虚拟其他X86的操作系统。使用者可以在VirtualBox上安装并执行Solaris、Windows、DOS、Linux、OS/2 Warp、OpenBSD及FreeBSD等操作系统作为客户端操作系统。最新的VirtualBox还支持运行Android 4.0系统。
与同性质的VMware及Virtual PC相比较,VirtualBox的独到之处包括远程桌面协定(RDP)、ISCSI及USB的支援,VirtualBox在客户机操作系统上已可以支持USB 2.0的硬件装置。此外,VirtualBox还支持在32位宿主机操作系统上运行64位的客户机操作系统。
VirtualBox既支持纯软件虚拟化,也支持Intel VT-x与AMD-V硬件虚拟化技术。为了方便其他虚拟机用户向VirtualBox的迁移,VirtualBox可以读写VMware VMDK格式与VirtualPc VHD格式的虚拟硬盘文件。
1.5.3 Hyper-V
Hyper-V是微软公司提出的一种系统管理程序虚拟化技术。Hyper-V设计的目的是为广大用户提供更为熟悉及成本效益更高的虚拟化基础设施软件,这样可以降低运作成本、提高硬件利用率、优化基础设施并提高服务器的可用性。
Hyper-V的设计借鉴了Xen,采用微内核的架构,兼顾了安全性和性能的要求。Hyper-V底层的Hypervisor运行在最高的特权级别下,微软将其称为Ring1(而Intel将其称为Root Mode),而虚拟机的操作系统内核和驱动运行在Ring0,应用程序运行在Ring3。
Hyper-V采用基于VMBUS的高速内存总线架构,来自虚拟机的硬件请求(显卡、鼠标、硬盘、网络)可以直接经过VSC,通过VMBUS总线发送到根分区的VSP, VSP调用对应的设备驱动,直接访问硬件,中间不需要Hypervisor的帮助。
从架构上讲,Hyper-V只有“硬件-(Hyper-V)-虚拟机”三层,其本身非常小巧,代码简单,且不包含任何第三方驱动,所以安全可靠、执行效率高,能充分利用硬件资源,使虚拟机系统性能更接近真实系统性能。