从某种角度上说,伴随着服务器与数据中心虚拟化技术的成熟与普及(这里包含相应的支撑技术的演进,比如网络和存储技术的变革),桌面虚拟化的到来基本上也只是一个时间的问题,因为任何技术的出现与发展,再到普及,都不是一个孤立的事件,而是有前因后果的,对于虚拟桌面来说,也是如此,它是与IT总体的进步和随之而来的IT架构变革思路密切相关。
桌面虚拟化的诱人的选择
IT技术与理念的不断发展和演进,也正在改变着最终用户的应用习惯,以及企业的IT架构。当企业越来越离不开IT来帮助其进行经营时,我们会发现 IT架构的变革是与企业的发展和成长息息相关的,所以这是任何企业,不管是巨型的跨国公司,还是中小型企业都要面对的话题。而在这个过程中,反过来也给相应的技术留出了“涌现、发展和普及”的空间。
如今,企业IT架构的发展也正处在一个重要的变革时期,越来越多的企业开始关注到了传统数据中心的局限性,开始向更高层次的架构与理念上转移,而“迈向云计算”无疑是众多客户们的终极愿景,而桌面虚拟化也正好与之遥相呼应,从这一点也可以理解“桌面云”的由来。
桌面虚拟化的理念并不难于理解,就像云计算将所有的IT资源与应用进行后台的汇总,再统一的、有序的、按需的交付出来。如果你把企业终端设备上所运行的操作系统(如Windows)和相关的应用(如Office)也看成是企业应用的一部分的话,就可以理解桌面虚拟化的真正用意——将与企业业务相关的桌面和应用,以及相应的应用所生成的数据集中起来,有效的进行统一的管理、保护与更新,并根据相应的案例规则与设定向前端指定的用户交付桌面与其所配套的应用(这也是应用虚拟化的理念),我们可以通过下图来具体理解一下桌面虚拟化。
图1:桌面虚拟化的示意图
我们可以把自己的电脑分解为三个层次,硬件层就是本地的电脑,而桌面层就是操作系统,应用层就是应用软件,如果桌面不是本地的,就是虚拟桌面,应用不在本地安装,就是应用虚拟化。请注意桌面虚拟化与应用虚拟化的关系,虽然应用虚拟化是桌面虚拟化的组成部分,但它可以单独使用。
不过,在现实的应用中,往往人们会犯“非此即彼”的错误,容易爱走极端。桌面虚拟化有着很好的集中管理特性,理论上它不需要终端设备有多高的处理能力,但这并不意味着桌面虚拟化等同于瘦客户机(ThinClient),如果抱以这种想法,显然就大大限制了桌面虚拟化给我们带来的想像空间。
虚拟桌面的多样性
图2:思杰(Citrix)公司定义的桌面虚拟化的6种类型
在这里,我们先引用一下思杰(Citrix)公司在桌面虚拟化方面的类型定义,相对来说是比较全面的,不过这是出于对其XenDesktop产品的介绍而进行的定义,我们也需要有所甄别。
大体上它以桌面处理位置划分为客户端计算和服务器端计算两大类,基于这两种计算方式 ,我们可以看到桌面虚拟化有多种应用类型,虽然在服务器一侧有三种类型,但针对一些特殊的应用或性能需求,也有必要将后台的桌面部署在物理的刀片PC上,所以所谓的服务器端计算,我们可以更为准确的理解为数据中心端计算,而本地流桌面则有点像老式的终端/瘦客户机服务;安装有虚拟应用的桌面,则就是向本地桌面交付虚拟应用;基于VM的本地桌面,则就是端终虚拟化的范畴,比如VMware Workstation、Virtual PC、VirtualBOX虚拟机等等,严格的讲,这些虚拟机里的操作系统是从本地安装的,并不能称之为桌面虚拟化,笔者更愿意以终端虚拟化来描述,Citrix XenClient可谓是这方面的最新代表力作。
从这点来看,桌面虚拟化其实有很多内容,并不仅仅是从后台数据中心向瘦客户机发送个桌面数据流那么简单。不同的用户级别、需求,桌面虚拟化相对于他们的解决方案也不可能千篇一律。你不想像,一个大企业的主管用一台瘦客户机办公或出差吧。因此,当我们开始准备向虚拟桌面世界迈出第一步时,一定要明确自己企业内部不同级别的应用环境与需求,并以此再去寻找相应的虚拟桌面解决方案。虽然虚拟桌面的理念就那么一个,但实施的方案则多种多样。
与CITRIX合作开发XenClient的英特尔公司,可以说是当今世界上生产CPU种类最为齐全的公司,它的产品涉及智能终端、上网本、笔记本、台式机、发烧友平台、服务器等几乎所有的IT处理设备,因此在桌面虚拟方面,也有着自己全局认识,为此它提出了他们自己的桌面虚拟化的概念,值得我们注意。
图3:Intel桌面虚拟化概念示意图,在Intel的桌面虚拟化架构中,可见与Citrix的交付中心概念不谋而和。在Intel的规划中,终端虚拟化分为三个层面,分别是操作系统的镜像流、终端虚拟环境与终端的应用流与虚拟化,后者是最级的虚拟化,而这也是Citrix借助于XenClient 要实现的目标
图4:Intel的桌面虚拟化方案实现了在线(瘦客户机)与离线终端(传统的高级终端,可以看作是完整的PC)的完美结合,在具备管理集中化功能的同时,可以根据不同的需要,可选的调整数据存储的集中与本地化。而结合上面的应用环境的划分,我们可以很好的理解为分办环境下的应用数据集中存储(保存在后台服务器上),和私用环境下的个人数据本地存储
显然,用户的级别有高有低、日常公办的应用类别的丰富性有简有繁、工作的地点有移动性和固定性,这也就意味着我们不能以一种桌面交付的模式来应对所有的办公需求。不管是英特尔的DVC还是CITRIX的FlexCast理念也都在向我们传达这样的一个事实,与此同时,相应的厂商也在努力完善后续的解决方案。
打开你的想像空间 迎接虚拟桌面的时代
图5:XenClient就是一个面向终端的虚拟化平台,在一台终端上建立两个虚拟机——Personal VM与Business VM,即个人(私有)与商务(办公)两虚拟机,XenClient全面配合Intel的vPro技术,再加上Citrix自己的专有技术,以实现更为强大的安全与管理功能
这里我们不能不提一下CITRIX的XenClient,这是当前唯一一款基于Type1标准的面向PC的虚拟化Hypervisor,如果你知道 CITRIX的XenServer或是微软的Hyper-V相对于服务器的作用,就不难理解XenClient的用途。简单的说,它可以让你的PC(当前主要是基于英特尔vPro平台的笔记本电脑)建立多个高效率的虚拟机(基于Type1模式,而不是在操作系统里再生成虚拟机),每个虚拟机可以分配不同的用途,比如你可以设置一个“个人”虚拟机,完全由你掌控,看高清电影还是联网游戏,你想干啥就干啥,你还可以设置一个“网银”虚拟机,可以用于安全的网上金融交易,最后则一个“公办”虚拟机,该虚拟机只处理公司的业务,显然它就是留给企业桌面虚拟的窗口。
由于各虚拟机间是逻辑隔离的,所以可以保证高度的安全性,假如你的“个人”虚拟机因上网聊天、游戏而被入驻病毒或木马,由于底层隔离(Type1 Hypervisor建立于硬件BIOS之上,比操作系统的优先级还高)所以并不会对其他虚拟机造成影响。
这种设计有一个巨大的好处,它充分照顾了用户的私人应用与企业公办应用的需求,让那些习惯了“自由”的高级、移动公办用户可以更平滑、顺利的接受企业的桌面集中管控——因为还有自己独立的虚拟机,而这显然离不开强大的本地虚拟机能力。事实上,XenClient目前能在英特尔产品架构平台发挥最大优势的重要原因就在于,英特尔处理器平台整体的虚拟机性能与安全性,比如VT-x提供了处理器的虚拟化辅助硬件加速功能,降低了Type1 Hypervisor的虚拟化管理的开销,而VT-d则提供了让虚拟机直接访问PCI等外设的能力,而这对于保证个人应用所必须的显卡性能至关重要,与此同时,英特尔的TXT可信执行技术则在开机之时就开始监控Hypervisor的底层安全性。
XenClient所带来的应用模式,无疑为我们打开了很多想像的空间,也让业界对桌面虚拟化的认识不再是那么单一。与此同时,这种基于强大硬件平台而非瘦客机的桌面虚拟化,反过来也为桌面虚拟化本身带来更多的可能。
一个典型的例子就是日常公办或个人应用中经常用到的视频处理,包括了3D图形、Flash渲染、AVC/VC1等高清视频解码。如果这些应用的处理都放在后台的数据中心,其实是完全没问题的,桌面虚拟化软件早已经注意到前端用户平台硬件的发展,当用户是在一台强大的电脑上采用虚拟桌面,那么其本地的处理能力是不是将被浪费了呢?况且服务器并不具备强大的GPU处理资源,纯粹的CPU运算其实是事倍功半的一种处理模式。因此现在的桌面虚拟化软件,可以做到智能的感知终端配置,并合理的将相应的负载放在本地或数据中心上执行,以保证最佳的效果与合理的服务器利用率。
图6:CITRIX的XenDesktop所采用的HDX技术在相应的视频应用启动前,会检测后台与端台终端的配置,以寻找最佳处理模式,如果可以在终端上处理,将源数据发向终端,如果终端的配置无法胜任,则在后台服务器上处理,并向终端交付最终的图像数据
目前,主流的笔记本和台式机均已经具备了强大的视频处理能力,即使是整合级的产品。比如英特尔最新的Sandy Bridge系列处理器,其整合的GPU即可轻松的处理1080P的全高清视频的解码,3D处理能力甚至可以满足初级工作站的水平,再配合强大的虚拟化性能,难道不是一个理想的全能型桌面虚拟化平台吗?
我们现在可以想像一下,强大的终端硬件、智能终端感知应用分配技术与XenClient这样的终端虚拟化软件相结合所产生的新一代虚拟桌面,又会给我们的企业日常的公办环境带来怎样的变革呢?毫无疑问,其与传统的瘦客户机解决方案有机组合,将在满足企业对桌面公办的效率、管理和安全的要求的同时,也为那些需要更高自由度与灵活性的用户需求带来更佳的体验,从而也能进一步优化后台数据中心的工作负载。
总之,桌面虚拟化这种集中式管理与交付的“云模式”已经越来越被客户所接受,并且其采用的意向似乎比当年的服务器虚拟化更高。但是,终端设备的多样式是服务器一端所不能比拟的,这也注定了其向桌面虚拟化演进的路径不会向服务器虚拟化那样的整齐划一。
当虚拟桌面化软件通过自己的实践积累,找到终端用户的多样性,并为此而改进之后,作为最终的用户,我们也完全有必要根据不同的应用需求与应用级别来合理的划分不同的虚拟桌面的承载平台。为此,处理器与硬件厂商也已经提供了多种选择。