VMware

维基百科,自由的百科全书
跳转至: 导航搜索
VMware Inc.
公司類型 上市公司NYSEVMW
成立 1998年
代表人物 總裁CEO:Paul Maritz
總部地點 美國 美国加州帕罗奥多Hillview大道3401號
邮政编码 94304
電話號碼 +1 877-486-9273
+1 650-427-5000
產業 虚拟化云计算
產品 VMware Workstation
VMware Fusion
VMware Player
VMware Server
VMware vSphere
VMware ACE
VMware Lab Manager
VMware Converter
VMware ThinApp
母公司 易安信公司
網址 www.vmware.com

威睿英语VMware, Inc.)是全球著名的虛擬化软件公司,由易安信公司控股持有。

歷史[编辑]

產品[编辑]

VMware Workstation[编辑]

VMware工作站(VMware Workstation)是VMware公司销售的商业软件产品之一。该工作站软件包含一个用于英特尔x86相容電腦的虚拟机套装,其允许用户同时创建和运行多个x86虚拟机。每个虚拟机实例可以运行其自己的客户机操作系统,如(但不限于)WindowsLinuxBSD变生版本。用简单术语来描述就是,VMware工作站允许一台真实的電腦在一個作業系統中同时開啟並运行数个操作系统。其它VMware产品帮助在多个宿主電腦之间管理或移植VMware虚拟机。

由于企业市场中高速增加的服务器的巨大数量,VMware工作站的声望获得了增长[來源請求]。将工作站和服务器转移到虚拟机环境,可使系统管理简单化、缩减实际的底板面积、并减少对硬件的需求。

主要限制(至2010年10月):

  • 3D加速功能不支持Windows XP客户机。

VMware Player[编辑]

用于为虚拟机提供宿主服务的免费软件产品VMware Player可运行由其它VMware产品产生的客户虚拟机,同時也可以自行创建新的虚拟机。

VMware的官方網站提供了多个经过预先配置的操作系统和应用程序的免费虚拟盘映像,这之中有不少是社会募捐的[1]。也存在着可用来创建虚拟机,以及对VMware虚拟硬盘和软盘映像文件进行挂装、操作及转换的免费工具。VMware Player可免费用于个人用途,但VMware Player Plus许可才能用于商业用途。

VMware Fusion[编辑]

是VMware面向苹果电脑推出的一款虚拟机软件。

VMware Server[编辑]

在2006年2月6日VMware发布了VMware Server产品的1.0版本,取代原先的VMware GSX Server[2]。VMware服务器可以创建、编辑、运行虚拟机。除了具有可以运行由其它VMware产品创建的虚拟机的功能外,它还可运行由微软Virtual PC产品创建的虚拟机。VMware国际公司将VMware服务器产品作为可免费获得的产品,这是因为希望用户们最终能选择升级至VMware ESX服务器产品。

VMware国际公司不正式支持运行于Windows XP或专业版Windows 2000上的VMware服务器产品,这不同于VMware工作站产品。然而,已有用户报告了在专业版Windows XP下成功安装并提供VMware服务器功能的例子(但有个别限制要求)[3]。VMware国际公司提供了一个受支持的宿主操作系统的清单[4]

在2010年1月,VMware宣布2011年6月30日结束对VMware Server的支持。

VMware ESX服务器[编辑]

ESX服务器使用了衍生自史丹佛大学(Stanford Univ.)開發的SimOS核心,該核心在硬件初始化后替换原開機的Linux内核。ESX服务器2.x的服务控制平台(亦称为“COS”或“vmnix”)是基于Red Hat Linux 7.2的。ESX服务器3.0的服务控制平台源自一个Red Hat Linux 7.2的经过修改的版本——它是作为一个用来加载vmkernel的引导加载程序运行的,并提供了各种管理界面(如CLI、浏览器界面MUI远程控制台)。该虚拟化系统管理的方式提供了更少的管理开销以及更好的控制和为虚拟机分配资源时能达到的粒度(指精细的程度);这也增加了安全性,从而使VMware ESX成为一种企业级产品。

VMware ESXi服务器[编辑]

Vmware ESXi是Vmware vSphere 4.1版本开始提供的服务器系统。相比Vmware ESX,ESXi剔除了基于Red Hat Linux的服务控制平台,使VMware代理可以直接在VMkernel上运行。由于脱离了对基于Linux的控制台操作系统的依赖,整个软件平台的尺寸由ESX的约2GB缩减至不到150MB,并消除了底层Linux系统可能带来的安全性和稳定性隐患,而获得授权的第三方模块也可在VMkernel上运行。ESXi同时使用了新的管理控制台PowerCLI。

从Vmware vSphere 5.0版本开始,Vmware不再提供ESX服务器产品,ESXi成为Vmware产品线中唯一一款服务器平台产品。[5]

VMware vSphere[编辑]

VMware vSphere,原稱為VMware Infrastructure,是一整套虚拟化应用产品,它包含VMware ESX Server 4、VMware Virtual Center 4.0、最高支持8路的虚拟对称多处理器(Virtual SMP)和VMotion,以及例如VMware HA、VMware DRS和VMware统一备份服务等分布式服务。VMware国际公司在2009年4月发布了VMware vSphere 4。该套装提供六個档次的组合方案

数据中心[编辑]

VMware国际公司对数据中心应用提供两种主要产品:VMware ESX和VMware服务器(旧称为VMware GSX)。

  • VMware ESX服务器是作为VMware用于在数据中心应用中运行企业级应用的旗舰产品。由于ESX是在『近硬體』層級上加载的,它能使x86的利用效率提高60%到80%。
  • 数据中心亦可使用VMware服务器产品运行,但运行该产品须依赖于宿主环境的基本操作系统;此外,在运行软件的额外层面时也会产生对机器的附加开销。然而VMware服务器产品具有一点超过ESX产品的优势:它支持的设备的规格更多,例如可支持USB连接方式和某些PCI设备。

亦请注意VMware ACE产品。

其它产品[编辑]

其它三种与ESX协同运行的产品是:虚拟中心(VirtualCenter)、VMotion和P2V(将物理计算机运行环境直接移植为虚拟机的工具)。

  • 虚拟中心可用来监视和管理多个ESX或GSX服务器。
  • VMotion可用来在服务器之间实现几乎无停滞地移动运行中的虚拟机。
  • P2V允许用户通过使用映像软件,将一台物理的服务器制作为虚拟机映像,从而创造出一个从物理机到虚拟机的重现。它用虚拟的驱动文件代替了实际的驱动文件,并且在VMware的数据存储中创建出机器空间。

描述[编辑]

运行VMware工作站进程的计算机和操作系统被称为宿主机(host)。在一个虚拟机中运行的操作系统实例被称为虚拟机客户(guest)。类似仿真器,VMware工作站为客户操作系统提供完全虚拟化的硬件集–例如,客户机只会检测到一个AMD PCnet网络适配器,而和宿主机上真正安装的网络适配器的制造和型号无关。VMware在虚拟环境中将所有设备虚拟化,包括视频适配器、网络适配器、以及硬盘适配器。它还为USB、串行和并行设备提供传递驱动程序(pass-through drivers,指将对这些虚拟设备的访问传递到真实物理设备的驱动程序)。

由于与宿主机的真实硬件无关,所有虚拟机客户使用相同的硬件驱动程序,虚拟机实例是对各种计算机高度可移植的。例如,一个运行中的虚拟机可以被暂停下来,并被拷贝到另外一台作为宿主的真实计算机上,然后从其被暂停的确切位置恢复运行。借助VMware的VirtualCenter(虚拟机中心)产品中一种称为Vmotion的新功能,甚至可以在移动一个虚拟机时不必将其暂停–就是说现在即使在向不同的宿主机上移植虚拟机时,这些虚拟机仍然可以保持运行。

实现[编辑]

傳統的模擬器,如Bochs,透過調用宿主機上的軟體子程序逐條執行每一道客戶機的CPU指令,以此模擬客戶機的微處理器。這種抽象化的方法,可使宿主機模擬出不同於自身微處理器的環境,讓客戶機運行。然而這類模擬器運行得非常慢。

一种更有效率的方式是在初次执行客户机指令时动态地重新编译那些机器指令块,以后用到这些指令时直接执行经过翻译的代码。这种方式是由微软Virtual PC for Mac OS X产品、以及Fabrice BellardQEMU产品(不含近期的kqemu附加模块)所使用的方式。

和Virtual PC for Windows产品及带有kqemu附加模块的QEMU产品一样,VMware工作站使用了一种更加优化的方式,在尽可能的情况下直接运行程序代码,在x86中这是执行用户模式和虚拟8086模式的程序代码的情况而言。当不能直接运行程序代码时,这几种软件产品会动态地重写代码,这是在执行内核级别和实模式的程序代码的情况而言。在VMware中,经过翻译的代码是被放入内存的空闲区域中的,一般是在地址空间的尾部,这个区域可以随即被保护起来并通过分段机制标记为不可见的。由于这些原因,VMware比仿真器显著地快,能以超过在真实硬件上运行速度的80%的速度运行虚拟的客户操作系统。VMware对在运行高强度计算的应用程序时只有小到3%-5%的效能损耗而自豪。

缺点是客户操作系统的指令代码必须和宿主机的CPU兼容。因此不同于仿真器,VMware工作站不能用来在一个英特尔x86处理器上运行Mac/PPC软件。另一个缺点是通常不可能有效率地嵌套使用VMware虚拟机(指在虚拟机客户中运行另一个VMware虚拟机,即以一个虚拟机客户作为宿主机再运行VMware)。最后,尽管VMware虚拟机是运行于用户模式下的,VMware工作站宿主程序本身必须在宿主操作系统下安装多种驱动程序,尤其是为了能动态切换GDTIDT表。

最后一点说明:经常有人错误地认为象VMware或Virtual PC这类虚拟机产品是替换不良指令简单地在用户模式下运行内核代码。这两种方式都不能用于x86。替换指令的意思可以这么理解:假设要执行指令试图读取该指令本身的代码,它会吃惊地发现没有找到预期的内容。因为实际上不可能在允许指令正常执行的同时又保护其代码不被读取,要实现指令替换是复杂的。在用户模式下不加改变地运行代码同样也是不可能的,这是因为在用户模式下,大部分仅读取机器状态的指令不产生异常、也不能正确反映程序的真实状态,此外某些指令的行为会悄悄地有所变化。重写指令总是必需的;必要时会模拟初始位置的当前指令指针,硬编码的断点也特别地会被重新映射。

特点[编辑]

除了为到网络适配器、CD-ROM读盘机、硬盘驱动器、以及USB设备的访问提供了桥梁外,VMware工作站还提供了模拟某些硬件的能力。例如,能将一个ISO文件作为一张CDROM安装在系统上、也能将.vmdk文件作为硬盘驱动器安装、以及可将网络适配器驱动程序配置为通过宿主计算机使用网络地址转换(NAT)来访问网络,而非使用与宿主机桥接的方式(该方式為:宿主网络上的每个客户操作系统必須分配一个IP地址)。

VMware工作站还允许无须将LiveCD烧录到真正的光盘上、也无须重启计算机,而对这些LiveCD进行测试。还可以捕获在VMware工作站下运行的某个操作系统的快照。每个快照可以用来在任何时候将虚拟机回滚到保存的状态。这种多快照功能使VMware工作站成为销售人员演示复杂的软件产品、开发人员建立虚拟开发和测试环境的非常流行的工具。VMware工作站包含有将多个虚拟机指定为编队的能力,编队可以作为一个物体来开机、关机、挂起和恢复—这使VMware工作站在用于测试客户端-服务器环境时特别有用。

VMware公司新的企业级服务器和工具产品,正在使「将旧的生产服务器移植到虚拟机」的做法开始流行,这种做法能几乎不费力地将多个旧式服务器集装到一个单个的新宿主计算机中。

问题[编辑]

较早版本的VMware似乎不能运行较新版本的Linux(在运行于VMware 2.x时,2.4系列的内核好像有问题;2.6系列的内核会导致VMware 3.x报告保护错误)。不过VMware工作站现在已经升级到能支持那些较新的操作系统和内核的5.0版本。但是对最新的2.6.x版本的内核还是必须要打个补丁–即便使用的是VMware工作站5.0版。名字为vmware-any-any-update9x的该补丁可免费获得(目前名字的最后部分是update93)。在Google裏搜索一下能得到许多下载地址。

另外,VMware工作站在用于将MAC地址用作唯一识别标记(UID)的环境中时,最好是(通常也是必须)为每个虚拟机手工配置MAC地址以保证每个MAC地址确实是唯一的。这类环境的一个例子是在网络交换机上启用MAC安全机制(例如端口绑定)的情况,另一个例子是使用Altiris产品的环境(在配置为将MAC地址作为UID时)。该情况下,可以简单地禁用除被桥接的所有网络/适配器,并编辑每个虚拟机的.vmx文件,将其中“ethernet0.address”改为唯一的MAC地址、以及将“ethernet0.addresstype”改为“static”。同时请确保将“ethernet0.generatedaddress”项整个删除。

参见[编辑]

參考資料[编辑]

外部链接[编辑]