服务器 频道

1998-2009 VMware书写的“虚拟化”历史

 【IT168 专稿】虚拟化技术在 20 世纪 60 年代首次开发,当时是为了对大型机硬件进行分区以提高硬件利用率。30 多年前,IBM 率先实施虚拟化,作为对大型机进行逻辑分区以形成若干独立虚拟机的一种方式。这些分区允许大型机进行“多任务处理”:同时运行多个应用程序和进程。由于当时大型机是十分昂贵的资源,因此设计了虚拟化技术来进行分区,作为一种充分利用投资的方式。

    在 20 世纪 80 年代和 90 年代,由于客户端-服务器应用程序以及价格低廉的x86 服务器和台式机成就了分布式计算技术,虚拟化实际上已被人们弃用。20 世纪 90 年代 Windows 的广泛使用以及 Linux 作为服务器操作系统的出现奠定了 x86 服务器的行业标准地位。x86 服务器和桌面部署的增长带来了新的 IT 基础架构和运作难题。这些难题包括:

    ——基础架构利用率低。根据IDC的报告,典型的 x86 服务器部署平均达到的利用率仅为总容量的 10% 到 15%。组织通常在每台服务器上运行一个应用程序,以避免出现一个应用程序中的漏洞影响同一服务器上其他应用程序的可用性的风险。

    ——物理基础架构成本日益攀升。为支持不断增长的物理基础架构而需要的运营成本稳步攀升。大多数计算基础架构都必须时刻保持运行,因此耗电量、制冷和设施成本不随利用率水平而变化。

    ——IT 管理成本不断攀升。随着计算环境日益复杂,基础架构管理人员所需的专业教育水平和经验以及此类人员的相关成本也随之增加。组织在与服务器维护相关的手动任务方面花费过多的时间和资源,因而也需要更多的人员来完成这些任务。

    ——故障切换和灾难保护不足。关键服务器应用程序停机和关键最终用户桌面不可访问对组织造成的影响越来越大。安全攻击、自然灾害、流行疾病以及恐怖主义的威胁使得对桌面和服务器进行业务连续性规划显得更为重要。

    ——最终用户桌面的维护成本高昂。企业桌面的管理和保护带来了许多难题。在不影响用户有效工作的能力的情况下控制分布式桌面环境并强制实施管理、访问和安全策略,实现起来十分复杂且成本高昂。必须不断地对桌面环境应用数目众多的修补程序和升级以消除安全漏洞。

    1999 年,VMware 推出了针对 x86 系统的虚拟化技术,旨在解决上述很多难题,并将 x86 系统转变成通用的共享硬件基础架构,以便使应用程序环境在完全隔离、移动性和操作系统方面有选择的空间。今年是IT168网站成立十周年,值此之际,IT168服务器频道推出了系列回顾性文章,以梳理服务器产业过去的风风雨雨,从而帮助大家对那些如同璀璨明星一样的企业和产品有了一个历史性的认知和把握。下面就让我们一起来回顾VMware自1998年成立以来其产品技术不断发展变迁的历程。


IDC:虚拟化技术发展道路上的里程碑

    VMware(NYSE:VMW)是总部设在美国的一家专门研究虚拟化软件的公司,成立于1998年,总部位于加利福尼亚州的帕洛阿尔托市,主要控股股东是存储界的巨头EMC(NYSE:EMC)公司。VMware这个称呼源自“VM”,即“virtual machine”(虚拟机)的首字母缩写,结合了“Software”中第二部分的ware ,最后便形成了VMware这个词,即虚拟机软件。VMware的桌面软件可以运行在Windows、Linux和Mac OS X上,VMware的企业软件VMware ESX Server可以直接运行在服务器裸机上,不需要任何操作系统的支撑。

回顾系列:

生于2000年 刀片服务器迎来多元化时代

从POWER1到POWER7 IBM处理器20年简史

1998-2009 英特尔至强处理器的12个年头

2003-2009年 盘点AMD皓龙处理器历程

VMware的传奇历史

    VMware由Diane Greene(1976年获得佛蒙特大学机械工程学士学位,1978年获得美国麻省理工学院建筑学学士学位,1988年获得美国加利福尼亚大学伯克利分校计算机科学硕士学位),Mendel Rosenblum(美国弗吉尼亚大学数学学士,1991年获得美国加利福尼亚大学伯克利分校博士学位),Scott Devine(美国康奈尔大学学士,斯坦福大学硕士),Edward Wang(1983年计算机学士,1988年硕士,1994年博士,都是在美国加利福尼亚大学伯克利分校获得的)和Edouard Bugnion (瑞士苏黎世理工学院学士,斯坦福大学硕士)创办于1998年。Rosenblum和Greene后来结婚了,两人是在伯克利分校时认识的。直到2005年Edouard Bugnion一直是VMware的首席架构师和CTO,后来他创立了Nuova Systems(目前已被思科收购)。

    公司总部设在美国加利福尼亚州的帕洛阿尔托市,2005年在剑桥和麻省理工学院建立了R&D中心。VMware软件可以运行在Windows和Linux上,2006年12月首次发布了运行在Mac OS X上的版本。现在,VMware 已成为 x86 虚拟化领域的全球领军企业,年收入19亿美元,员工6500人,拥有 130,000 多家客户,其中包括财富 100 强中的全部企业,它们都认识到了虚拟化的好处,包括总体拥有成本更低,投资回报率更高,并改善了它们产品的服务能力。

    1999年VMware发布了它的第一款产品VMware Workstation,2001年通过发布VMware GSX Server(托管)和VMware ESX Server(不托管)宣布进入服务器市场。VMWare Workstation、GSX Server、ESX Server三者的区别在于:ESX Server并不需要操作系统的支持,它本身就是一个“操作系统”,可以用来管理硬件资源,所有的系统都安装在它的上面,带有远程web管理和客户端管理功能;GSX Server这个版本就要安装在一个操作系统下,这个操作系统叫做HOST OS,这个HOST OS可以是Windows 2000 Server以上的Windows版本或者是Linux(官方支持列表中只有Redhat,Novell SUSE,Mandrake等少数几种),和ESX Server一样带有远程web管理和客户端管理功能;VMware WorkStation和GSX Server类似,也是要安装在一个操作系统下,对操作系统的要求也是Windows 2000以上或者Linux,但区别在于没有web远程管理和客户端管理功能。

    2003年VMware推出了VMware Virtual Center,包括最初的VMotion(虚拟机动态实时迁移功能,将正在运行的虚拟机从一台物理服务器移动至另一台物理服务器,而不影响最终用户)和Virtual SMP(允许一个虚拟机同时使用最多四个物理处理器)技术,使得VMware的软件在高可用和性能方面建立了优势,得以进入关键应用领域,并靠其自身实力建立起了行业领袖地位,2004年推出了64位支持版本,同一年,VMware被EMC收购。

    2007年8月,EMC在纽约证券交易所发行了VMware 10%的股份,每股29美元,当天报收51美元,上涨了22美元。虚拟化技术成为IT领域众星捧月般的“明星”技术。

    随着X86虚拟化市场日益红火,众多厂商开始加入战团,包括微软、思杰、红帽、Parallels、Virtual Iron等。面临激烈竞争,VMware的市场霸主地位受到侵蚀和挑战。2008年7月8日,VMware共同创始人,当时的董事长兼CEO Diane Greene被VMware董事会突然解雇,取而代之的是Paul Maritz,Paul Maritz曾在微软干过14年,后来又领导过EMC的云计算业务部门,同时还宣布了VMware 2008的收入将在2007年的基础上大约增长50%,因此VMware的市场价格下降了将近25%,2008年9月10日,公司的首席科学家Rosenblum辞去了VMware的工作。


VMware现任CEO Paul Maritz

    2008年9月16日,VMware宣布和思科合作,提供数据中心连接解决方案,合作的第一个成果就是思科的Nexus 1000V,Nexus 1000V是一款分布式虚拟交换机,它作为VMware基础架构的一个集成选项。

    2008年11月26日,VMware收购了专门从事3D图形驱动开发的Tungsten Graphics公司。
 

核心产品设计理念

    x86 计算机与大型机不同,它在设计上不支持全面虚拟化,因此 VMware 必须克服难以解决的难题才能在 x86 计算机上开发出虚拟机。

    在大型机和 PC 中,大多数 CPU 的基本功能都是执行一系列存储的指令(即软件程序)。x86 处理器中有 17 条特定指令在虚拟化时会产生问题,从而导致操作系统显示警告、终止应用程序或直接完全崩溃。因此,这 17 条指令是在 x86 计算机上首次实现虚拟化时的严重障碍。

    为应对 x86 体系结构中会产生问题的这些指令,VMware 开发了一种自适应虚拟化技术。在生成这些指令时此技术会将它们“困住”,然后将它们转换成可以虚拟化的安全指令,同时允许所有其他指令不受干扰地执行。这样就产生了一种与主机硬件匹配并保持软件完全兼容性的高性能虚拟机。VMware 创新了这项技术。

    VMware提供了一套完整的虚拟化硬件给客户机操作系统,VMware软件虚拟化了显卡、网卡和硬盘,主机为客户机USB、串行和并行设备提供驱动,因此VMware虚拟机就可以在不同计算机之间进行快速迁移,因为每个主机看到的几乎是一样的客户机,实际上,系统管理员可以暂停在虚拟机客户机上的操作,移动或拷贝客户机到另一个物理计算机上,而且正好在暂停点恢复执行。另外,对于企业用户,有一个实用的工具VMotion,它允许迁移正在运行的虚拟客户机到独立的主机上,但存储是共享的,转移过程对于所有用户而言都是透明的。

    VMware Workstation、GSX Server和ESX对目标操作系统都进行了优化,比起模拟器(如Bochs)性能要好得多。模拟器在目标主机上一个一个模拟每个CPU指令的功能,或动态重新编译它们第一次执行的机器指令编译块,当代码再次运行时直接使用翻译后的代码,微软公司的Virtual PC for Mac OS X就是使用的这种方法。VMware软件部模拟不同硬件的指令集,大大提升了性能,但在不同指令集计算机之间移动虚拟客户机可能会出现问题(如从64位Intel CPU主机移动到AMD CPU主机上);如果源和目标主机的CPU数量不一样也可能会出现问题,在移动虚拟客户机之前先停掉它,然后再移动到不同CPU型号的主机上通常不会出现问题。

    VMware的产品使用CPU直接运行代码(如在x86上运行用户模式和虚拟的8086模式),当直接执行不起作用时,VMware产品动态重写代码,VMware管这个过程叫做“二进制转换”或BT,转换的代码存储在多余的内存中,通常在地址空间的末尾,它的分段机制可以保护和隐身,正是由于这些原因,VMware要比那些模拟器的运行速度更快,在相同的硬件上,虚拟客户机的运行速度大约上升80%左右,VMware宣传在计算密集型应用程序上系统开销要少3%-6%。

    VMware的方法巧妙地避开了基于x86平台上虚拟化的困难,虚拟机可以通过替换处理干扰指令,或在用户模式下运行内核代码。虽然VMware虚拟机运行在用户模式下,但VMware Workstation本身需要安装主机操作系统的各种驱动,特别要注意GDT和IDT表动态切换。VMware产品线也可以在双启动系统上运行不同的操作系统。 

形形色色的产品 从桌面到数据中心

桌面软件

? VMware Workstation(VMware 1999年发布的第一款产品),它允许用户在同一物理主机上安装和运行多个x86或x86-64兼容的操作系统实例。

? VMware Fusion为MacIntel平台提供了与VMware Workstation类似的功能,完全兼容由VMware产品创建的虚拟机。

? VMware Player是为那些没有VMware Workstation或VMware Fusion许可准备的,它是一款可免费使用的产品,它可以运行创建好的虚拟机(但不能创建虚拟机)。
 

服务器软件

    VMware有两款用于服务器的虚拟化产品:

    1)VMware ESX(之前叫做“ESX Server”),它是一个企业级产品,比免费软件VMware Server的性能更好,系统开销更小,VMware ESX是一个裸机产品,直接运行在服务器硬件上,可以直接控制虚拟服务器,使用更多或更少的硬件资源。此外,VMware ESX还被集成到了VMware vCenter中,它提供额外的服务为服务器部署增强可靠性和可管理性,如:

——VMotion – 从一个ESX主机将正在运行的虚拟机移动到另一个ESX主机上

——Storage VMotion – 将正在运行的虚拟机从一个存储设备移动到另一个存储设备

——DRS(Dynamic Resource Scheduler) -- 使用VMotion自动平衡ESX集群

——HA(High Availability)-- 集群中硬件失效时,虚拟服务器自动在集群中另一个主机上重新启动。

    VMware ESX Server是为关键业务环境中分区、合并和管理服务器的虚拟基础架构软件,非常适合企业数据中心使用,ESX Server通过提高资源利用率使计算基础架构的总体拥有成本降到最低,同时与硬件无关的虚拟机封装文件的管理大大增加了管理的灵活性。

    2)VMware ESXi(之前叫做“VMware ESX 3i”)和ESX非常类似,不同之处就是移除了服务控制台,使用了更轻巧的BusyBox进行代替。相对ESX而言,ESXi需要的磁盘空间更小,内存占用也减少了,ESXi既可以运行在闪存盘上,也可以运行在普通硬盘上,VMware ESXi主机不能直接从控制台进行管理,所有管理都是通过VirtualCenter Server进行的。2008年7月,VMware决定将ESXi免费。

    3)VMware Server(之前叫做“GSX Server”)也是一款免费软件,和VMware Player类似,但它可以创建虚拟机,它是一个“托管”应用程序,需要运行在现有的Linux或Windows操作系统上。
 

更多功能产品

     VMware vCenter Converter(VMware Converter)既有服务器版本也有独立运行的版本,它主要用于完成以下任务:

     ——将物理机转换成虚拟机,也叫做P2V

     ——将虚拟机从一个类型转换到另一个类型

     ——在VMware ESX/ESXi服务器上运行自动配置任务

    转换的虚拟机和VMware ESX/ESXi Server,VMware Server和VMware Workstation兼容,可以在任何运行Windows XP(或更高版本)或基于Linux的操作系统(Linux只能在独立版本上工作)的物理机上进行P2V转换,通过中央控制台管理转换,允许同时执行多个转换。VMware vCenter Converter替代了VMware的旧产品“P2V Assistant”和“Importer”, P2V Assistant允许用户将物理机转换成虚拟机,Importer则负责从其它产品中将虚拟机导入到VMware Workstation。

    VMware Capacity Planner是一款IT容量规划工具,在异构计算环境中收集可利用的数据,和行业标准参考数据进行比较,最后提供分析报表和决策支持模型。

    VMware ACE提供了一种分布式安全的虚拟桌面给网络客户端计算机。

    VMware ThinApp是一款创建可移动软件的虚拟化套件,这些软件可以在光盘、U盘、闪存卡、软盘中进行启动运行。

    VMware Infrastructure是一个管理VMware ESX/ESXi服务器环境的虚拟化产品集合。

    VMware vSphere是一个云操作系统,VMware vSphere 4最初叫做VMware Virtual Infrastructure (VI) 4,它可以管理大型基础架构池,包括内部和外部网络上的软件和硬件。


vSphere不同版本的功能比较,点击看大图

    VMware Tools包为不同客户机操作系统提供驱动和实用程序提升图形应用性能,这个包让主机和客户机之间结合得更加紧密,包括共享文件夹,即插即用设备,时钟同步和跨环境剪切/粘贴,VMware Tools包适用于Windows、Linux、Solaris、FreeBSD和Novell NetWare客户机操作系统。

    在2007年9月11日的VMworld大会上,VMware宣布VMware Tools包中适用于Linux、Solaris和FreeBSD客户机操作系统的驱动和实用工具都采用GPL或GPL兼容的许可。他们也宣布了在Sourceforge.net上创建Open Virtual Machine Tools(open-vm-tools)项目。

   更多关于VMware产品技术的内容,请查阅IT168的专题报道:

    主流虚拟化全解读

   VMware HA动手实验

    首款云OS:vSphere 4

   VMware VDI部署实战

   虚拟化案例视频解读

    2008VMware虚拟化大会

   IT168虚拟化频道

1
相关文章