随着虚拟化技术的飞速发展,以及用户对虚拟化技术了解程度的加深,越来越多的IT工作者准备或者已经开始在企业中尝试各类虚拟化技术。在这个时候还为大家进行虚拟化技术的初步介绍可能显得有些过时,但实际上,在和很多企业中的IT工作者接触过程中,我发现有些用户对于虚拟化技术、产品的使用没有问题,但是他们常常会问:到底什么叫虚拟化、虚拟化包含什么、如何定位虚拟化技术、为什么要使用虚拟化技术等和概念相关的问题。这些问题看似和产品使用、方案实施没有关联,但如果用户不能弄清楚这些问题,在企业中进行虚拟化方案设计、产品选择、架构改造时不但不能优化IT环境、创造价值,反而有可能得到相反的结果,对虚拟化技术的错误定位将有可能导致企业将虚拟化技术用在不适当的场景中,这也有可能无法发挥出虚拟化技术的最大优势。
那么,我们就先来看看到底什么叫虚拟化。现在的虚拟化的厂商、产品以及技术非常之多,各自都有各自的特点,但是既然他们都属于虚拟化这个范畴,那么我们就应该可以找到一些共性,从而帮助我们为虚拟化下个定义。我想,资源的打包和分离就是这个共性。而所谓的虚拟化就是将某台计算机上面的资源打包,然后分离到另外一台计算机上面的过程。完成了这个过程,也就实现了虚拟化。
例如,在我们没有使用虚拟化技术之前,某台电脑上面安装了一个操作系统,如果我们想在另外一台电脑上重现一个完全一样的操作系统环境(包括操作系统、应用程序、用户配置等),唯一的办法就是重新安装一遍,并做同样的配置。因为操作系统无法和它下面的硬件分离开。而当有了虚拟化技术后,我们可以将这个操作系统环境制作成一个虚拟机,之后就可以将这个虚拟机复制到其它的任何一台电脑之上。这个虚拟机里面包含的就是一个完整的操作系统环境,所以它就是一台虚拟的计算机,它的存在形式只是一个文件。现在能够实现虚拟机的软件也都比较成熟:例如微软的Virtual PC、Virtual Server、Windows Server 2008中的Hyper-V组件等,都能够制作出虚拟机。对照上面的定义,操作系统就是一种资源,虚拟机的存在形式是一个文件,这就是打包,而复制的过程就是分离,由此可见,我们实现了操作系统的虚拟化。
再例如,以前我们是没有办法将应用程序从一台计算机上面直接复制到另外一台计算机上面使用的。因为应用程序需要安装,这个过程中它会写入文件、修改系统文件、修改注册表等。当然,对于绿色软件我们是可以直接复制使用的,不需要安装,但能成为所谓的绿色软件的产品太少了。那么在使用了虚拟化技术后,我们同样可以将应用程序打包,之后就可以很容易的复制到其它计算机上面去使用,关键是不在需要安装。这就实现了应用程序的虚拟化。微软的App-V就可以做到这一点。
同样道理,其它的虚拟化产品或技术也都存在资源打包、分离的过程,只是资源类型多种多样。由此可见,资源的打包和分离过程就是虚拟化的过程。谈到资源类型,我们一般会按照企业IT架构中的不同层面进行划分。从下至上,可以分为:服务器、桌面、应用、用户界面,而现在每个层面都能实现虚拟化,也就是说都有产品或技术帮助其实现资源的打包和分离。
Hype-v系列:虚拟化技术的5大应用层面
了解了以上内容后,我们现在就可以自己去判断一项技术是不是属于虚拟化的范畴,而且,我们也已经知道IT架构中的各个层面都可以实现虚拟化,那么企业用户在选择时候就要考虑,究竟是哪个层面需要进行虚拟化,将要选择的产品是不是针对这个层面进行虚拟化的。在进行虚拟化项目方案设计时,这些内容都会变得尤为重要。