2024年5月9日发(作者:)

服务器虚拟化技术综述

当前,虚拟化技术的优势已经得到了业界的普遍认可,虚拟化技术所具备

的提高资源利用率和节能环保的特性也得到了越来越多高性能计算机用户的青

睐,虚拟化技术的普及和推广成为信息化技术发展的必然趋势。

主要是三个方面的因素使虚拟化技术迅速走向成熟。首先,信息化产业的

快速发展使得服务器硬件技术有了巨大进步;其次,高端服务器所承载的软件应

用环境已经逐步发展成熟;第三,也是最重要的一点,由于服务器技术的快速发

展以及信息化产业发展对于数据中心的规模要求越来越高,导致数据中心面临着

越来越严重的发展瓶颈,而虚拟化由于具有提高资源利用率以及节能环保、可进

行大规模数据整合等特点,而成为信息化技术发展的又一项具有战略意义的新技

术。

一、基本概念

当我们尝试着理解虚拟技术时,首先必须要理解“虚拟”的概念。“虚拟”这个

词最早来源于光学,用于理解镜子里的物体。现在,“虚拟”这个词已经经过演化,

用来描述任何真实物体的模拟了,例如分区、虚拟机、虚拟内存、虚拟磁盘和虚

拟现实。在讨论虚拟技术的时候,使用“虚拟”这个词,是因为我们希望虚拟机看

起来和工作起来都和真正的机器一模一样。这意味着,虚拟机并不是真正的机器,

但是它能像真正的机器一模一样地工作。

将这个概念应用到计算机系统中可以让不同用户看到不同的单个系统(例

如,一台计算机可以同时运行Linux 和 Microsoft Windows)。这通常称为全虚拟

化(full virtualization)。

虚拟化也可以使用更加复杂的格式,其中单个计算机看上去具有多个架构

(对于一个用户来说,它是一个标准的 x86 平台;对于另外一个用户来说,它

是 IBM Power PC平台)。这种虚拟化形式通常被称为硬件仿真。

最后,更加简单的一种虚拟化是操作系统虚拟化,其中一台计算机可以运

行相同类型的多个操作系统。这种虚拟化可以将一个操作系统的多个服务器隔离

开来(这意味着全都必须使用相同类型和版本的操作系统)。

实际上,从原理上看,所有虚拟技术虚拟的是指令集。所有的IT设备,不

管是PC、服务器还是存储,都有一个共同点:它们被设计用来完成一组特定的

指令。这些指令组成一个指令集。对于虚拟技术而言,“虚拟”实际上就是指的这

些指令集。虚拟机有许多不同的类型,但是它们有一个共同的主题就是模拟一个

指令集的概念。每个虚拟机都有一个用户可以访问的指令集。虚拟机把这些虚拟

指令“映射”到计算机的实际指令集。

目前所能看到的硬分区、软分区、逻辑分区、Solaris Container、VMware、

Xen、微软Virtual Server2005等这些虚拟技术,都是同样的技术原理,只是虚拟

指令集所处的位置不同而已。

二、虚拟技术分类

按照虚拟层所处位置的不同,目前所有的虚拟技术大致可以分为硬件虚拟、

逻辑虚拟、软件虚拟和应用虚拟四种类型。

 逻辑虚拟模式

最早的虚拟模式当然是源自IBM大型主机的逻辑分区技术,这种技术的主

要特点是,在IBM的大型主机中,每一个虚拟机都是一台真正机器的完整拷贝,

只是内存少了点。根据这一概念,一个功能强大的大型主机可以被分割成许多虚

拟机。这些虚拟机仅比原来的主机少一点内存资源而已。这一虚拟模式后来被业

界广泛借鉴,包括HP vPAR、VMware ESX Server和Xen在内的虚拟技术都是这

样的工作原理。

在逻辑虚拟模型中,虚拟机操作系统是整个IBM虚拟机体系结构的“大脑”,

包括操作系统和硬件在内的整个系统被称作虚拟机系统(VM System)。每个虚

拟机系统都被一个叫做控制程序的程序控制。控制程序除了管理实际的物理硬

件,还要为每个系统用户创建一个虚拟机,这种虚拟机是System /370或System

/390系统的全真模拟。IBM虚拟机概念的重点在于:每个用户都可以在他们的