在InfoWorld所列的2010年十大热点技术中,桌面虚拟化名列第二。Forrester预测:从2010年开始,桌面虚拟化将逐渐被企业大规模采用。虚拟化技术经过多年的发展,其衍生出来的“桌面虚拟化”将带来企业IT体系架构的根本性变革。
虚拟化是近年来整个IT行业最被广泛提及的话题,并进而衍生出了“云计算”的概念。对“虚拟化”、“云计算”的爆炒,已达到了“无商不‘虚’,无商不‘云’”的地步,颇有些当年“电子商务”时代”无商不‘e’“的味道。
为什么“虚拟化“惹得所有商家为之疯狂?它本质上究竟是怎样的?为什么在服务器虚拟化之后,又突然冒出“桌面虚拟化”?本文将从技术框架角度对虚拟化进行初步探讨,以便大家能透过现象看本质,从而更好地理解虚拟化,掌握这个代表IT产业发展新“高地”的新生事物的动向。
以通俗的方式理解“虚拟化”
“虚拟化”乍听起来有些高深,但了解其实质后,就一点也不复杂了。简单说,它是一种改变原有计算体系架构、原有计算层次结构关系的方式方法。
图1 个人电脑体系结构 图2 虚拟化后的个人电脑体系结构
以我们熟悉的个人电脑为例(如图1所示),整个计算体系结构可分为硬件(CPU、内存、主板、显示器、硬盘、外设等)、操作系统(Windows、Linux、Mac等)、应用(Office、Web浏览器、AutoCAD、反病毒软件等)、用户配置文件、用户(即使用者)几个层次。到目前为止,在这个层次结构中任意上下相连的二个“层”之间在编程逻辑上都是紧密相关的,即“紧耦合”,这使得硬件和操作系统之间、操作系统和应用之间、应用和其使用者之间紧密捆绑。这样的结构在相当长时间内符合了人们对计算的基本应用要求。
但随着互联网技术对计算应用地巨大推动,人们对计算设备更新换代的需求,以及终端设备多样性、移动性、安全性、个性化等需求都呈现爆炸式增长,于是传统“紧耦合”的计算结构越来越“力不从心”。最典型的例子:任何一次设备更新,都需要对系统及应用进行彻底重新安装以及配置重来,并且还会有老应用不兼容新系统等问题。尽管有一些补充技术力图弥补这方面的缺憾,但都是局部性方案,没有从根本上一揽子解决问题。
虚拟化技术的提出,让所有人“眼前一亮”。从图2可以看到,在现有层次结构、上下逻辑关系不变的前提下,任意上下相连的二个“层”之间都插入了一个”虚拟件“,从而使得层与层之间从”紧耦合“变成了”松耦合“。所谓”松耦合“,即意味着对于某个“层”来说,在其下层结构不变的情况下,该层可任意改动! 这一下子就打开了人们丰富的想象之门。还看刚才的例子:如果采用了虚拟化,那么在设备更新时,只需把原来操作系统及其以上的东西”挪“到新设备上,所有的事情就”万事大吉“了!这样的移动性和便利性是不言而喻的。
图2同时解释了另一个问题,即虚拟化技术的多样性。早先人们一提到虚拟化,以为就指服务器虚拟化。其实事情远非如此。如果是硬件和操作系统间加载虚拟件,这通常指服务器虚拟化(另一种更中性的叫法是硬件虚拟化);如果操作系统和应用间加载虚拟件,就指应用虚拟化;如果应用和配置文件间加载虚拟件,就叫配置虚拟化;… 依此类推。图3是对各类虚拟化技术定位的解释说明。
图3 各类虚拟化技术的定位
桌面虚拟化:自如应对“前台”计算爆炸式增长
从有现代计算的那一天起,多台设备协同计算就一直是永恒的话题,并逐渐演变出“主机/终端“、”客户机/服务器(C/S)“、”浏览器/服务器 (B/S)“等不同时期的模式。但无论何种模式,都反映了同一个指导思想,即”前台“计算与”后台“计算的分工与协同。”后台“在这里主要指数据中心、计算中心等核心设施,通常包括服务器、存储、网络系统、安全系统等;它以基建为导向,更讲求以基础建设为中心,重在集群、容错、灾备、服务器整合等解决方案的完善。而”前台“则泛指终端使用者及其所使用的任何终端设备,如PC、工作站、笔记本、上网本、智能手机、PDA等;它是以应用为导向,非常看重应用与业务的安全、连续、多样、广泛等。
随着网络的普及,基于TCP/IP的网络化计算成为事实标准。在很好地承担了历史责任后,“紧耦合”的计算方式在”前台“计算爆炸性增长与变化面前,面临着全新的挑战。这些挑战主要包括:应用便利性、终端平台任意迁移性、数据安全性、业务连续性等。虽然目前市场上有些方案可部分解决上述挑战,但并不完整。从使用者角度看,他们更需要一揽子的集成解决方案,这样才能使IT的优化与改进真正切合业务发展需要。此时,桌面虚拟化技术应运而生。
任何新技术的商用化都要经历相当长的演进过程,不可能一蹴而就。桌面虚拟化也是经历了长时间的演变。早期桌面虚拟化的核心技术被称为“应用远程接入”,即前台用户通过远程接入模式进入到数据中心服务器,服务器端把指定应用的影像推送到客户前端,从而实现应用接入。在这个过程中,客户前端与后台服务器间仅交流通信协议、应用的影像及其变化量,在客户前端所呈现的应用实际是虚拟计算,真正的计算发生在后台。随着应用远程接入的普及,人们发现这样的“远程接入“是以应用、而非传输为导向,便逐渐演变成“应用交付”技术。但“应用交付”技术中,虽然总体上是把后台应用推送到前台,但很多基于B/S架构的系统是数据与协议同时传输,前台终端上也进行实体数据的计算。这和上述“前台影像、后台计算、非数据传输“的基本特征有很大出入,依然不能完整而精确地概括这一技术体系。当”虚拟化“横空出世,人们一下子豁然开朗:这不正是恰到好处的精准定义吗!
现在,“桌面虚拟化“已经成为一个业界技术标准定义,并且在早期技术的基础上又有了相当的完善与扩充,不仅包含了人们熟知的VDI模型,也涵盖了应用虚拟化、本机虚拟化、共享服务的应用发布等多种模型。
在Forrester的技术市场调查报告中使用了“Client Virtualization(客户端虚拟化)”这个词来统一概括上述提到的各类前台虚拟化。这是一个很好的概括,体现了在虚拟化改变所有传统计算模型时前台计算的准确定位。
(未完待续)
【编辑推荐】