桌面虚拟化大史记——下一代桌面虚拟化技术展望

访客:22105  发表于:2015-10-08 13:52:01

早在1959年,计算机科学家Christopher Strachey发表的一篇名为《大型高速计算机中的时间共享》的学术报告中就首次提出了虚拟化的基本概念。20世纪6070年代,以IBM为代表的大型计算机系统已经广泛的进入金融、航空、科研领域应用并服务于社会,此类大型计算机操作系统的多任务多用户设计机制,可以让多名操作人员同时在用电览连接的终端机上对主机程序进行指令操作同时完成多个任务,以此来降低计算机的采购及运维成本。此类应用模式被视为当今桌面虚拟化技术的萌芽。

20世纪80年代后期,随着微处理技术的创新,PC硬件变得越来越便宜、运算能力越来越强。加之以太网技术的成熟,对于日常事务的处理也不再依赖大型计算机的后端运算。终端机在民用领域显得不再重要并逐渐退出应用市场。进入上世纪90年代中后期,随着PC数量几何级增量如何管理成为问题。Microsoft在其NT 系统中推出RPL 协议、INTEL 也随后推出了PXE 协议,使得“富客户端”的集中式存储管理、操作系统的批量部署交付成为可能,并由此在衍生了无盘工作站技术及相关技术产品。   

进入新世纪后Citrix ICA 协议及MicrosoftRDP 的协议发展成熟、同期VMware将虚拟机技术产品化、INTEL AMD 陆续对处理器新加入了超线程、多核心、Virtualization元素,完成了从硬件平台到操作系统全面支持虚拟化的历史进程。互联网、移动互联网发展中对技术的不断需求又催生了云计算,虚拟化技术正式进入了一个全面发展时期。

在桌面虚拟化领域,一直由国外厂端制定行业标准和技术方向,一定程序上制约了国内厂商的创新。不过近年来国内也不乏华为、联想、和信创天(VESystem)等厂商坚持自主研发的道路,从理论到实践完成国产虚拟化技术的成型。更成为了下一代桌面虚拟化技术的开拓创新者。

例如:华为在VDI基础上重新定义了桌面云解决方案,通过在云平台上部署华为桌面云软件,使终端用户通过瘦客户端或者其他任何与网络相连的设备来访问跨平台的应用程序,以及整个客户桌面。VDI英文全称Virtual Desktop Infrastructure,译为虚拟桌面基础结构,VDI旨在为智能分布式计算带来出色的响应能力和定制化的用户体验,并通过基于服务器的模式提供管理和安全优势,它能够为整个桌面映像提供集中化的管理。自从2010年华为宣布进军云计算领域以来,四年时间,华为在云业务方面的进展可谓突飞猛进,其中就包括他们的端到端桌面云解决方案。相比于其他国产厂商,华为桌面云解决方案更加“完整”,特别是在网络及安全方面,比如接入侧安全、网络安全、云平台安全、数据安全以及管理安全等,在华为桌面云中都有所涉及。此外,据了解,华为公司内部有10万名员工在使用自己的桌面云服务。

VESystem(和信创天)国内首家实践了VOI Virtual OS Infrastructure )架构将VOI 产品化。 VEMS(虚拟终端管理系统)在国内的大专院校、科研机构、军工单位中得广泛的应用。依托VOI架构,从虚拟安全、桌面管理、行为控制等多个角度构建完整的终端桌面管理体系,为用户量身定做自己的企业私有云。从预防终端异常事件的发生到流畅安全的系统及应用交付,可全面贯彻落实企业终端管理及应用策略。使得和信一跃成为国产虚拟化云计算的领导厂商之一,并成为为电信集团云计算战略合作伙伴,国家核高基重点项目虚拟化分课题承接单位,唯一通过中国人民解放军测评中心虚拟终端类产品认证的VOI桌面虚拟化产品。

桌面虚拟化技术发展的瓶颈:由于实现原理和应用领域的不同,一直以来将桌面虚拟化分为了VDI VOI 两大阵营,但是因受到使用环境及用户需求多样性的影响,两种架框都会在不同的场景下表现出并不理想的地方。在现代的数字城市、校院、小区的建设中无论是采用VDI 还是 VOI 都将存在缺陷。如果采用两套方安案结合的方式来处理将造成数据的分离和管理界面的不统一,不仅管理人员需要完全不同的两套管理系统中管理被迫分割的用户群体。作为最终用户被划分到不同的系统后,之前系统的数据也得不到延续。

为了满足互联网、移动互联网时代下业务发展的需要,入口需要有一种更创新的技术来取代现有的管理与交付手段。正如多年前U盘取代软盘、如今又被网盘逐渐取代一样,在外部技术发展到一定阶段,必将对内部支撑技术提出更高的要求,否则将成为发展的瓶颈。就此多家国内外虚拟化厂商联合提出了下一代云桌面(研发代号 NGD )的理论模型,NGD 将桌面虚拟化技术、应用虚拟化技术进行了无缝融合,将虚拟化的交付分发延伸到了云端。 以跨平台、跨领域的快速交付作为目标。 淡化了原先桌面虚拟化、应用虚拟化、服务器虚拟化、网络虚拟化以及私有云因适用场景的不同而形成类型区分。使虚拟化技术的最终应用是以用户为中心,而不是以场景为中心。

据悉国内厂商VESystem (和信创天)已经于年内着手NGD的产品开发,公开的资料显示在NGD 的解决方案中,首先实现了数据的统一与通用、管理界面(控制台)的统一。VESystem 为此定义了一种的文件格式( .NGD), 这种格式有望成为下一代云桌面的标准之一, 作为一种镜像格式 .NGD 不仅可以作为VDI虚拟机的快照文件使用,同时也能作为VOI 的虚拟磁盘镜像文件使用; 我们可以随时将一台VDI用户的虚拟机化身为一个虚拟磁盘交付给VOI 的终端使用。也可以将一个VOI 终端使用的镜像化身为一台虚拟机放置在服务器集群中,用户可以随时用VDI 客户端远程接入。实现自由的无缝切换的同时,无需重新适配环境。 当用户正在使用客户机配置良好性能强劲时如果单纯的采用VDI 模式将完全浪费本机的硬件资源,此时管理人员或用户自主切换到VOI 工作模式使用获得更高的工作效率。 当这个用户出差外地或回到家中,面前的PC 性能一般且没有工作所需的软件环境时,则可以切换到VDI 的工作模式,前一天以VOI 工作模式下生产的资料数据各种个性化设置依然如旧。同时即便是机场行使车辆上也能手机(移动设备)随时打开自己的云桌面处理工作。同时VESystem NGD 提供统一的管理平台,在用户中心里管理人员全览所有用户的使用情况,无论当前用户的接入地点、平台、系统的差异均可以一个表格、图表中呈现。在统一的资源管理池中,可以全览宿主服务器、虚拟服务器、虚拟机、虚拟系统镜像的IO读写、流量消耗、资源配置与占用情况。而在早期管理人员不得不在多套系统间反复切换查询才能得并不完整的数据。

NGD 使VDI VOI 的融合达到实用的最重要的意义在于前端后端资源的共用,众所周知VDI 主要采用服务器端的运算资源,而VOI 主要采用终端自身的计算资源,两者都有优劣势且互补。但是用户更希望在成本降低的同时性能得到提升。以VOI 为例能否在完全发挥本地性能的同时,也能利用服务器的计算资源,因为客户机的配置终归有限,也不可能无条件的一直升级客户机,当客户机配置逐渐退出主流,如何让其保障虚拟操作系统流畅运行的同时,也能使用最新的应用软件。VESystem 在设计NGD 时提供了“应用托管模式” ,即将传统的应用虚拟化重新定义,可以为企业建立一个云端的应用中心, 与现行应用市场的最大的区别的大于,NGD云端应用中心可以根据终端环境自主选择应用的工作模式。NGD 云端应用中心中的应用,即可以像VEAPP 中的虚拟应用一样,实际工作运行于远端的服务器,客户机实时呈现输出图频(与 RDP ICA 相似),客户机本地并不产生文件。更无需要安装要运行的应用软件。退出应用一切结束本地不存密。这种模式不仅安全,而且可以充分利用服务器的运行资源。 同时支持手机(Android / IOS )、Linux Windows 等多平台。 同时NGD的云端应用中心也提供应用推送模式,PC 客户端可以从中心下载或被动接受推送的应用,与前者的区别在于这种模式下应用可以直接在本地终端打开运行,不再依赖于应用主机实时支持。 即使离线外出也不影响使用,因为采用于系统分离及沙盒等技术此模式下,应用软件也无需安装和修改本地文件、注册表等,达到即点即用的绿色效果。在整合云端应用中心之后,VOI 的终端可以借助应用托管模式,将一些对高清图形实显要求不高,但是计算强度大的软件,作为虚拟应用发布到云端,终端可以在VOI 本地系统硬件支撑下同时使用远端应用主机上的应用程序,以期达到前后端同时发布性能的要求。

NGD 融合了VDI VOI VAPP(应用虚拟化)的特征,提出了以用户为中心的理论。作为下一代云桌面,虚拟化不应该再以场景划分产品,而成为一套快速有效的交付手段。NGD 既可以充分发挥服务器强大计算资源为瘦终端提供支撑。也能让PC 及新型云终端本机的CPU GPU 及内存、存储性能得到完全的使用。移动终端设备(智能手机、平板电脑等)也将受益 NGD 成为随身云端桌面的入口。

虚拟化技术已经成为现在云计算的基础支撑平台,以桌面虚拟化为代表的交付模式已经渐渐不能满足业务发展的需要,NGD 的出现将如同十年前的WEB 2.0 和今天的HTML5 一样成为一个划时代的革新型技术,彻底改变原先的技术及运维模式。催生更多的国内外技术厂家进入到该项技术的研发之中,目前的IT市场格局也将被改变。个人电脑无任台式、笔记本、手持设备都不再是传统的为服务个人计算为目的微型计算机,而将真正成为人接入云端的一个终端入口。你随身携带的电脑不再是笔记本、平板,因为地球上任何一台接入云端的电脑都将成为你的电脑,需要被识别仅仅是你的身份。

评论(0)

您可以在评论框内@您的好友一起参与讨论!

<--script type="text/javascript">BAIDU_CLB_fillSlot("927898");