随着虚拟化、云计算等技术的兴起,IT界将具有几十年历史的虚拟化技术再一次赋予了新的内涵,虚拟化的外延也得到了扩展。
然而,到目前为止,虚拟化还没有一个公认的、标准的定义,人们大多借用虚拟化的用途给出了不同的说法,总体来说,虚拟化的定义都可以概括和表述为:物理资源的逻辑抽象实现。
虚拟化定义
针对快速发展的虚拟化技术,世界一些标准化组织和大公司都给出了各自的虚拟化的定义,下面摘录一些定义:
IBM公司的定义是:“虚拟化是资源的逻辑表示,它不受物理限制的约束。”
维基百科(Wikipedia)的定义是:“虚拟化是表示计算机资源的逻辑组(或子集)的过程,这样就可以用从原始配置中获益的方式访问它们。这种资源的新虚拟视图并不受实现、地理位置或底层资源的物理配置的限制。”
Jonathan Eunice,llluminatalne 的定义是:“虚拟化是以某种用户和应用程序都可以很容易从中获益的方式来表示计算机资源的过程,而不是根据这些资源的实现、地理位置或物理包装的专有方式来表示它们。换句话说,它为数据、计算能力、存储资源以及其他资源提供了一个逻辑视图,而不是物理视图。”
虚拟化发展过程
克里斯托弗于1959年发表了一篇名为《在大型高速计算机中的时间共享》的论文,这篇论文被认为是最早使用虚拟化词语的文章,此后虚拟化进入了快速发展期。
虚拟化的发展过程可以描述为大型机-小型机-x86服务器这样的过程,它的发展推动力始终是为实现硬件资源的充分利用而研制的软硬件解决方案。
在20世纪60年代,IBM为解决大型机昂贵资源利用率不足的问题,将大型机进行逻辑分区,在各自分区内可以运行多个应用程序,他们彼此间互不干扰,相互独立运行,形成了虚拟机的雏形。
随后,IBM推出了虚拟机监视器(virtual machine monitor, VMM)以及虚拟机(VM)技术,为大型机的使用提供了独立的计算环境和虚拟机实例。IBM的逻辑分区(LPAR)技术使得虚拟机技术不断发展,并且在小型机上得到了应用。
服务器经历了从大型机、小型机到PC服务器的发展和普及,并且不断得到细分。随着图形操作系统Windows的崛起和Linux因免费而得到快速发展,基于这两种操作系统的x86架构PC服务器逐渐取代小型机,成为服务器市场的主流。x86架构服务器的虚拟化技术也取得了高速发展。1999年VMware公司推出了第一个基于x86系统的虚拟机。
在当今互联网时代,虚拟化技术已经不仅仅局限于服务器领域,在网络方面、存储以及桌面应用等方面都得到了广泛应用,形成了各自不同虚拟化技术发展方向。
虚拟化方向——云计算
虚拟化技术在当今软硬件技术飞速发展的背景下,在用户业务需求快速变化的情况下,可以根据情况弹性的应对这些变化,灵活地进行资源部署,有效地提高资源利用率。
因此,虚拟化技术已经成为目前发展最为快速领域之一的云计算的核心技术。以虚拟化技术作为支撑,云计算在互联网领域取得了令人瞩目的成绩。
虚拟化的工作模式
根据不同的技术实现方式和对支持资源的逻辑表示,虚拟化的工作模式一般可以分为三种。
一、一对多模式
这是虚拟化模式中最常见的一种,是在一个物理资源上实现多个逻辑结构的模式。
它将单个物理资源通过逻辑表示,为用户提供了多个属性相同的、与物理资源一样的虚拟资源,每个逻辑资源的使用者都以为自己在独占全部物理资源。
这种模式主要目的是实现功能强大设备的资源能够被充分利用。
虚拟服务器就是典型的这一模式代表, 通过在一台或几台物理服务器上安装虚拟化软件,就可以虚拟出来数量众多的逻辑单元,每个逻辑单元都可以像物理服务器一样安装不同的操作系统,执行不同的任务。
二、多对一模式
这种模式可以描述为将多个或者多组不同的物理资源进行有机整合,通过单一接口的方式进行逻辑呈现。主要目的是将普通资源通过整合来提供强有力的资源池,达到更高性能的一种方式。
存储虚拟化是这一模式的典型代表。不同类型的存储器,可以通过相关软件和硬件连接起来,合并为一个 大的统一存储池,数据被存储在这个存储池中,并被分散在不同的存储器中,但对于数据的操作者来说,这些都是透明的,他们并不知道数据真正被存到了哪台存储器中。
还有服务器的集群技术、网格计算等,都是使用了这一模式。
三、多对多模式
这种模式描述为多个物理资源存储统一逻辑 单元的相同副本,在实际应用中,请求者会根据指定的条件来选择一个物理资源来实现需求。
与第二种模式相比,这种模式表现为单个物理资源只是相同资源的副本,它们无法在逻辑上聚集在一起进行表达;单个物理资源包含了所有的逻辑功能,并在多个物理资源中形成复制关系。
这种模式的典型应用是文件虚拟化,用户访问特定文件时,系统通过内部规则定位到某个物理资源上进行读取,而用户并不知道访问了那个物理资源。