服务器 频道

服务器虚拟技术现实全景

        【IT168 技术】40多年来,虚拟技术已经发展到这样的一个阶段—我们每天享受着这一技术的好处,但并未意识到—例如当你打开Windows Server的命令行窗口时,便是在Windows上使用着虚拟机的功能。既然已经如此成熟,为什么我们还要关心虚拟技术?原因很简单,虚拟技术的概念虽然成熟,但它的重要性还尚未引起国内用户和读者的足够重视,尤其是在服务器和存储领域,虚拟技术将发挥决定性的作用。

  何谓虚拟?

  当我们尝试着理解虚拟技术时,首先必须要理解“虚拟”的概念。“虚拟”这个词最早来源于光学,用于理解镜子里的物体。现在,“虚拟”这个词已经经过演化,用来描述任何真实物体的模拟了,例如分区、虚拟机、虚拟内存、虚拟磁盘和虚拟现实。在讨论虚拟技术的时候,使用“虚拟”这个词,是因为我们希望虚拟机看起来和工作起来都和真正的机器一模一样。这意味着,虚拟机并不是真正的机器,但是它能像真正的机器一模一样地工作。

  实际上,从原理上看,所有虚拟技术虚拟的是指令集。所有的IT设备,不管是PC、服务器还是存储,都有一个共同点:它们被设计用来完成一组特定的指令。这些指令组成一个指令集。对于虚拟技术而言,“虚拟”实际上就是指的这些指令集。虚拟机有许多不同的类型,但是它们有一个共同的主题就是模拟一个指令集的概念。每个虚拟机都有一个用户可以访问的指令集。虚拟机把这些虚拟指令“映射”到计算机的实际指令集。

  定义完“虚拟”的概念,我们可以清楚知道,目前所能看到的硬分区、软分区、逻辑分区、Solaris Container、VMware、Xen、微软Virtual Server2005这些虚拟技术,都是同样的原理,只是虚拟指令集所处的位置不同而已。

  按照虚拟层所处位置的不同,目前所有的虚拟技术大致可以分为硬件虚拟、逻辑虚拟、软件虚拟和应用虚拟四种类型。

  逻辑虚拟模式

  最早的虚拟模式当然是源自IBM大型主机的逻辑分区技术,这种技术的主要特点是,在IBM的大型主机中,每一个虚拟机都是一台真正机器的完整拷贝,只是内存少了点。根据这一概念,一个功能强大的大型主机可以被分割成许多虚拟机。这些虚拟机仅比原来的主机少一点内存资源而已。这一虚拟模式后来被业界广泛借鉴,包括HP vPAR、VMware ESX Server和Xen在内的虚拟技术都是这样的工作原理。

  在逻辑虚拟模型中,虚拟机操作系统是整个IBM虚拟机体系结构的“大脑”,包括操作系统和硬件在内的整个系统被称作虚拟机系统(VM System)。每个虚拟机系统都被一个叫做控制程序的程序控制。控制程序除了管理实际的物理硬件,还要为每个系统用户创建一个虚拟机,这种虚拟机是System /370或System /390系统的全真模拟。IBM虚拟机概念的重点在于:每个用户都可以在他们的虚拟机上运行程序、存储数据,甚至虚拟机崩溃也不会影响系统本身和其他的系统用户。所以,IBM虚拟机模型不仅允许资源共享,而且实现了系统资源的保护。在大型主机上,用户可以选择Basic Mode(基本模式)、Logical Partition(逻辑分区方式)和z/VM(Z虚拟机方式)三种模式来配置系统。

  在上述模型中,虚拟控制程序以固件形式直接运行在主机硬件层之上,位于操作系统之下,是虚拟机系统中最重要的一部分。控制程序要管理系统硬件,包括启动和关机在内的系统支持任务,以及请求的排队和执行。同时控制程序还要管理每个虚拟机的编程特征和每个虚拟机的建立和维护。

  当IBM在2001年把大型主机上的VM System向下迁移到p系列和i系列上时,将虚拟控制程序称之为“Hypervisor”,并先后实现了逻辑分区与动态逻辑分区。

  据IBM系统科技部大中华区p系列产品经理李红和资深工程师房树新介绍,由于IBM p系列的设计思想是共享式的,即所有CPU可以同等地看到所有的内存和I/O的连接方式,即一种为数据/指令流提供足够的高速通路的体系结构。在p系列上,Hypervisor能看到所有的真实资源(CPU、内存和I/O卡),并且通过一个控制台(HMC)来管理逻辑分区。通过HMC将上述提到的资源定义到不同的逻辑分区中去,每个逻辑分区所需的最小资源是1/10个CPU(在2004年8月发布的AIX 5L v5.3上实现了1/10个CPU级别的分区粒度,以及1/100个CPU的微调量)、1GB内存和一个PCI插槽。

  而且IBM有意将逻辑分区技术进一步下移。2005年第四季度,IBM发布了虚拟I/O服务器,其目的就是让没有配置HMC的1~2路低端p系列和i系列用户,可以通过虚拟I/O的一个组件IVM(IBM Virtual Machine),实现简化后的HMC控制台功能。

  李红更透露说,IBM将在2006年内宣布一项突破性的虚拟技术,届时,IBM的虚拟层管理工具将能对本地服务器群的所有计算资源进行虚拟—类似于Grid的概念,但要点在于用户可以从全局角度出发,对计算资源和业务系统进行精确的配置。

0
相关文章