VMware虚拟化技术初探:虚拟化及其目的

在IT架构及服务中,虚拟化(Virtualization)指的是用软件来模拟硬件,从而达到降低成本等一系列目的的一种技术。VMware作为一家虚拟化软件供应商,其vSphere产品成功地以抽象形式剥离服务器底层硬件,使得IT资源更具有可用性和可扩展性,同时也更易于管理。

什么是虚拟化?

所谓虚拟化(Virtualization),就是用软件/程序来模拟系统硬件。普通PC上的”虚拟内存”就是其中的一个例子 — 用软件(操作系统)来将别的资源(硬盘)模拟成硬件(内存)。使用虚拟内存后,每个应用程序都独占一个连续完整的地址空间(32位或64位),但这种地址空间在真实硬件的层面上往往是由多个物理内存碎片以及外部硬盘所组成的。

在服务器层面上,虚拟化一般指的是用软件将硬件资源模拟成多台虚拟机(Virtual Machine);也即当需要新的机器时,用软件来模拟该机器所需的所有硬件(CPU、硬盘、内存、网卡等),并在这台虚拟的机器上安装操作系统。用来将硬件资源模拟成虚拟机的软件,叫做Hypervisor(管理程序):

virtualization

Hypervisor主要有两种。一种是内建了操作系统,安装并运行在硬件设备上,直接将硬件资源提供给虚拟机;另一种则是作为应用软件安装在已有的操作系统上,将经由操作系统访问到的硬件资源提供给虚拟机:
hypervisor

由于第二种方案(Hosted Hypervisor)建立在通用操作系统(Windows、Linux、Mac)的基础上,多了一层通用操作系统和别的应用程序的开销,因此在企业级服务器虚拟化领域,一般采用第一种方案(Native Hypervisor)。与之相反,对于个人用户,则一般使用Hosted Hypervisor。

在市场上,提供第一种方案(Native Hypervisor)的软件有Hyper-V、Xen以及VMware的ESXi。提供第二种方案(Hosted Hypervisor)的软件则有Virtual PC、KVM、Virtual Box以及VMware workstation。

虚拟化的目的

把真实的硬件资源用Hypervisor模拟成虚拟的硬件设备有很多好处,这些好处包括:

  1. 降低成本。将硬件资源虚拟化后,可以有效提高已有硬件的使用率,减少浪费,从而降低硬件的采购成本与运行时的能耗、管理成本。
  2. 增加可用性。虚拟化之前,一旦某个硬件设备崩溃或者损坏,对所提供的IT服务的影响是巨大的。虚拟化之后,只需对总的硬件资源进行一定的冗余配置,即可避免出现这种情况。vSphere产品中的”vSphere High Availability (HA)”以及”vSphere Fault Tolerance (FT)”组件可以很好的解决这一问题。
    类似的,当硬件需要进行更换或者升级时,使用虚拟化可以让IT服务做到无缝对接。
  3. 增加可扩展性。应用程序对于计算资源以及存储资源的需求存在着一定的波动,将硬件进行虚拟化后可以做到“物尽其用”,均衡各个服务器之间的负载。vSphere产品中的”vSphere Distributed Resource Scheduler (DRS)”、”vSphere Distributed Power Management (DPM)”以及”Storage DRS”、”Storage DPM”可以有效地增加可扩展性。
  4. 方便管理。在将各个服务器统一到虚拟化平台后,可以有效地提高管理效率,便于发现IT服务中的问题和瓶颈。