您现在的位置是:首页 > IT基础架构 > 软件与服务 >
深入解读桌面虚拟化的发展过程
摘要桌面虚拟化技术,维基百科上给出的定义是:“Desktop virtualization(或者成为Virtual Desktop Infrastructure)是一种基于服务器的计算模型,并且借用了传统的瘦客户端的模型,但是让管理员与用户能够同时获得两种方式的优点:将所有桌面虚拟机在数据中心进行托管并统一管理;...
桌面虚拟化技术,维基百科上给出的定义是:“Desktop virtualization(或者成为Virtual Desktop Infrastructure)是一种基于服务器的计算模型,并且借用了传统的瘦客户端的模型,但是让管理员与用户能够同时获得两种方式的优点:将所有桌面虚拟机在数据中心进行托管并统一管理;同时用户能够获得完整PC的使用体验。
很多商业方案同时提供了将用户远程转向到传统的共享系统,例如微软终端服务,思杰应用服务器,刀片PC甚至是没有使用的物理PC机。”桌面虚拟化的发展过程,大概分为以下3个阶段:
1、第0.5代的桌面虚拟化技术
在我们还不知道什么叫桌面虚拟化的时代,这种技术的前身从不同的领域产生,发展直至成熟,使得现在的桌面虚拟化技术成为现实。这主要包括了2种技术:
远程桌面
远程桌面技术,几乎所有从事IT技术的人都使用过。内置在WindowsXP中的远程桌面使用了RDP(Remote Desktop Protocol)协议,使得用户可以从其他的电脑上远程登录、访问与使用目标桌面。RDP协议最早微软用于Windows Server上的Terminal Service(终端服务)的访问协议,实现了Windows Server上的多用户模式,使得用户能够在本地并不安装任何应用的情况下,远程使用服务器上的各种应用。这种技术是将目标机上运行界面传输到用户实际的操作机屏幕上,并将键盘,鼠标等一系列的外设输入,传输到目标机,实现交互。终端服务与远程桌面的不同是,前者只操作应用,而后者将拥有整个桌面的控制权(当然这是独享的,这也是为什么有人远程桌面连入XP后,目标机屏幕自动变黑的原因)。
在虚拟化技术兴起之后,微软将Windows Server2008上的终端服务重新定义为演示虚拟化技术。而RDP协议的真正创造者——Citrix(发明了RDP协议,后来又将RDP协议卖给了微软,转而研究了效率更高的ICA协议)——使用ICA交付的应用模式称之为“应用虚拟化技术”。
不管名称如何叫,但可以看出桌面虚拟化技术的前身——远程桌面,是与现在的应用虚拟化技术具有相同渊源的。这也是今天桌面虚拟化技术的核心部分,正是有了这种技术,使得我们远程访问自己的桌面成为可能,也将用户使用与后台管理两个以前难以协调的矛盾进行了有机的分离,解决了目前用户使用灵活性与IT统一安全管理的冲突。
桌面操作系统虚拟化
这里是为了区分服务器虚拟化技术,特别强调桌面操作系统被虚拟。其实这个概念基本可以被等同与Vmware Workstation和微软VPC的方式实现的桌面级的操作系统。当然这种应用模式,主要开发人员和测试人员经常使用的,虽然虚拟的并不一定是XP,2000 professional,vista等桌面系统。这里之所以提到这个是因为在虚拟化技术刚起步的时候,一些厂商将此定义为桌面虚拟化技术,例如微软在推出MED-v技术之前,都是将VPC定义为微软的桌面虚拟化产品。
在这个角度定义的所谓桌面虚拟化,基本上可以被认为是用于PC上的桌面系统之上的虚拟化解决方案,只是与服务器虚拟化简单的区别与对应。其本身解决的仍然是操作系统的安装环境与运行环境的分离,不依赖于特定的硬件。但是不可否认的是,而且当服务器虚拟化技术成熟之后,真正得虚拟桌面技术才开始出现。
2、第一代桌面虚拟化技术
第一代桌面虚拟化技术,真正意义上将远程桌面的远程访问能力与虚拟操作系统结合了起来,使得桌面虚拟化的企业应用也成为可能。
首先,服务器虚拟化技术的成熟,以及服务器计算能力的增强,使得服务器可以提供多台桌面操作系统的计算能力,以当前4核双CPU的至强处理器16G内存服务器举例,如果用户的xp系统分配256M内存,平均水平下,一台服务器可以支撑50-60个桌面运行,则可以看到,如果将桌面集中使用虚拟桌面提供,那么50-60台的桌面采购成本将高于服务器的成本,而管理成本,安全因素,还未被计算在内,所以服务器虚拟化技术的出现,使得桌面虚拟化技术的企业大规模应用成为可能。
当然,如果只是把台式机上运行操作系统转变成为服务器上运行的虚拟机,而用户无法访问,当然是不会被任何人接受的。所以虚拟桌面的核心与关键,不是后台服务器虚拟化技术讲桌面虚拟,而是让用户能够通过各种手段,任何时间,任何地点,通过任何可联网设备都能够访问到自己的桌面,即远程网络访问的能力。而这又转回到和应用虚拟化的共同点,即远程访问协议的高效性上。
目前,提供桌面虚拟化解决方案的主要厂商包括微软、Vmware、Citrix,而使用得远程访问协议主要利用两种协议:早期由Citrix开发的,后来被微软购买并集成在Windows中的RDP协议,这种协议被微软和Vmware的桌面虚拟化产品使用,而基于Vmware的SunRay等硬件产品,也都是使用RDP协议;第二种就是Citrix自己开发的目前独有的ICA协议,Citrix将这种协议使用到其应用虚拟化产品与桌面虚拟化产品中。
协议效率决定了虚拟桌面使用的用户体验,而用户体验是决定了桌面产品生命力的关键,(微软的成功与Vista的没落无不证明了这一点)。从目前官方的文档与实际测试来看,通常情况下,ICA协议要高于RDP协议,一般情况下ICA的带宽占用为20kbps,而RDP在60kbps,这些都不包括看视频,玩游戏以及3D制图状态下的带宽占用率。正是由于这个差别,虚拟桌面的用户体验有比较大差别。一般情况下,在LAN环境下,一般的应用RDP和ICA都能正常运行,只不过是RDP协议造成网络占用较多,但对于性能还不至于产生很大影响,但是在广域网甚至是互联网上,RDP协议基本不可用。而在视频观看,Flash播放,3D设计等应用上,即使局域网,RDP的性能也会受到较大影响(在优酷上有很多视频进行比较),ICA的用户体验会很流畅。而且根据Citrix官方刚刚推出的HDX介绍,这方面的新技术会得到更快地推进。而微软和Vmware也意识到了这一差别,微软转而加大RDP协议的研发与优化,而Vmware也在转而寻找其他的更高效的替代方案。
特别强调的是,这三家厂商后台的服务器虚拟化技术都使用的是自己的产品,微软采用的是Hyper-v,Citrix采用的是XenServer(不过根据官方说法,是可以支持其他两个厂商的服务器虚拟化产品),Vmware使用的是自己得ESX。
3、第二代桌面虚拟化技术
第一代技术实现了远程操作和虚拟技术的结合,降低的成本使得虚拟桌面技术的普及称为可能,但是影响普及的并不仅仅是采购成本,管理成本和效率在这个过程中也是非常重要的一环。
纵观IT技术应用历史,架构的变化和三国中名言一样:分久必合,合久必分。从最早主机-亚终端集中模式,到PC分布模式,到今天的虚拟桌面模式,其实是一个计算使用权与管理权的博弈发展。开始主机模式,集中管理,但是应用困难,必须到机房去使用;PC时代来临,所有计算都在PC上发生,但是IT的管理也变成分布式的,这也是为什么IT部门的桌面管理员压力最大,需要分布式的管理所有用户的PC,管理的成本也大幅度上升。桌面虚拟化将用户操作环境与系统实际运行环境拆分,不必同时在一个位置,这样即满足了用户的灵活使用,同时帮助IT部门实现了集中的控制,从而解决了这一问题。但是如果只是将1000个员工的pc变成1000个虚拟机,那么IT管理员的管理压力可能并没有降低,反而上升了,只不过是不用四处乱跑了而已。
为了提高管理性,第二代桌面虚拟化技术进一步将桌面系统的运行环境与安装环境拆分、应用与桌面的拆分、配置文件的拆分,从而大大降低了管理复杂度与成本,提高了管理效率。如下图所示:
我们简单来计算一下:如果一个企业有200个用户,如果不进行拆分,IT管理员需要管理200个镜像(包含其中安装的应用与配置文件)。而如果进行操作系统安装与应用还有配置文件的拆分,假设有20个应用,则使用应用虚拟化技术,不用在桌面安装应用,动态将应用组装到桌面上,则管理员只需要管理20个应用;而配置文件也可以使用Windows内置的功能,和文件数据都保存在文件服务器上,这些信息不需要管理员管理,管理员只需要管理一个文件服务器;而应用和配置文件的拆离,使得200个人用的操作系统都是没有差别的WindowsXP,则管理员只需要管理一个镜像(用这一个镜像生成200个运行的虚拟的操作系统,简单来讲可以理解成类似于无盘工作站的模式)。所以总的来说,IT管理员只需要管理20个应用,1个文件服务器,和1个镜像。管理复杂性大大下降。
这种拆分也大大降低了对存储的需求量(少了199个xp的存储),降低了采购和维护成本。更重要的是从管理效率上,管理员只需要对一个镜像或者一个应用进行打补丁,或者升级,所有的用户都会获得最新更新后的结果,从而提高了系统的安全性和稳定性,工作量也大大下降。
(本文不涉密)
责任编辑:
下一篇:浅析服务器虚拟化的九大优势