话多,先上图再慢慢说:


自从有了虚拟化,无盘工作站、远程终端服务就渐渐进了IT历史课本,唯有IDV和VDI的PK仍在跌宕起伏


众所周知,桌面云一直是个深入民间,为CIO/HelpDesk们喜闻乐见的事物,它不像服务器虚拟化那样,被大象无形地养在深宫里,从IaaS到PaaS再到SaaS,从虚拟机到容器不断迭代进化,最后被肢解得ServerLess了。桌面云市场是三十年河东三十年河西,吆喝声此起彼伏,VDI、IDV颠过来倒过去地念叨,直到舌头打结。虽说名字起得像是兄弟俩照镜子,但是VDI和IDV却打娘胎里出来就相互看不上眼,动不动就对决、PK、相扑,从墙外扭打到了墙内。


VDI和IDV到底结了什么梁子?可以拿“联邦”和“邦联”这对名词来比较一下,“联邦”和“邦联”也是兄弟俩照镜子的关系。邦联是啥?按照维基百科的解释,邦联制是一个由若干独立国家组成的松散国家联盟,而常听到的“联邦”则是要求成员单位把大量权力让渡给中央政府,加强中央统一管理能力。


VDI和IDV的本质区别是桌面操作系统实体的运行位置在哪里,前者是集中在数据中心的服务器上,后者是分布在各个客户端本地。VDI就有点像联邦的意思,更加关注高度中央集权的管理策略,将所有的桌面以虚拟化的形式集中部署在数据中心服务器上,而IDV则有“邦联”的背景,让桌面在每个物理客户端上独立运行,中央服务器只做基础镜像(Golden    Image)的制作与分发,以及用户配置、应用安装等上层务虚化的管理,论特色是各有千秋,CIO们时常要在这两者之间做两难的抉择,其实这是对桌面电脑管理策略的选择。


VDI和IDV的历史来源可以上溯到上个世纪的1995年,那时候的Windows桌面本身还不支持多用户,微软让Citrix为它做了WinFrame,用来支持多个用户账号同时远程登录到WindowsNT上,这样每个用户可以摆出一副正在用着私人电脑的模样,这就是RDS(远程桌面服务)的概念了,但这显然不是长久之计,多用户在共享的还是同一台物理服务器,相互之间干扰太多,想多耗点资源、删个文件、关个机都得看别人心情。


在WinFrame的开发过程中,Citrix悄悄积累了大量的Windows远程桌面协议优化经验成果,ICA(Independent    Computing    Architecture)协议就是在这时候发端的,这个协议用来向客户端传输WinFrame服务器的桌面内容,此后ICA协议作为Citrix远程桌面交付产品的核心技术不断成熟和完善。ICA的设计理念其实与Unix/Linux上的X Window系统有很多相近的地方,例如它使得服务器能够对客户端输入进行响应和反馈,还提供了大量方法用于从服务器向客户端传送图像数据及其他媒体数据。


后来随着虚拟化技术的发展,Hypervisor有了裸机版,不用装在其它操作系统上了,性能得到大幅度改善,通过Hypervisor在同一台物理机上可以成功虚拟出多台具备实用价值的电脑桌面。于是Citrix看到了新的机会,决定把WinFrame留给微软当做Windows服务器中自带的终端服务(Terminal Service),然后挟着ICA桌面协议的余威转向桌面虚拟化,掀起了VDI的第一波浪潮,在这次浪潮中涌现了如雷贯耳的两大VDI产品:Citrix XenDesktop和Vmware View,Vmware还拉了一群伙伴们组织起了虚拟桌面联盟,VDI的名字就这么来的:Virtual    Desktop    Infrastructure。


第一代VDI让大规模的虚拟桌面得以高度集中化的管理,让每个人的电脑运行在自己看不到的地方,桌面管理员终于足不出户、轻点鼠标地修电脑了,什么装机、升级、恢复的琐碎杂事都开始跟喝咖啡一起进行了,用户随处走动、出差办公时,只要看到有个终端,扑上去就能用起自己熟悉的桌面了。


眼看着VDI成了气候,大量的电脑桌面被Hypervisor集中运行到了少量的几台服务器上,直接后果便是影响了CPU厂商们的销售业绩,于是大佬Intel拍案而起,迎上去拦腰抱住第一代VDI的几个软肋:远程桌面协议优化力度不够导致的用户体验不好,管理中心系统复杂度高,管理成本高,还不支持离线模式等等,提出了IDV的架构思路,该架构主要有三个特点:集中管理+本地执行、镜像分层技术、带外模式的设备管理。



其中最核心的就是第一条,把桌面从服务器赶回到客户端上,照旧用着客户端的本地硬件。看上去是复辟了,但是它与传统PC还是有不同之处,IDV在桌面与硬件之间加了一层裸机虚拟化,这样就可以方便地进行镜像的集中分发和硬件设备的带外管理。同时由于桌面运行在客户端上,IDV对集中管理的服务器要求自然就不那么高了,这也是IDV能够号称用一台服务器带动数千台桌面的原因,其实这个数字和VDI根本没有可比性,因为两者不是一码事,在服务器上管理桌面和运行桌面,两字之差,谬以千里。


但是Intel的IDV架构并不完全是逆技术潮流而动,它的是拉着Citrix一起做的,Citrix利用自己的裸机版Hypervisor Xen,外加Intel vPro CPU芯片的IntelVT-d等硬件辅助虚拟化技术,趁势推出了XenClient产品,与原有的XenDesktop/XenApp构成了全套解决方案,后来Citrix又收购了Virtual Computer公司的NxTop,进一步站稳了IDV阵脚。巨头VmWare随即也拉上了Mirage对物理桌面进行了管理,开了IDV的光,微软持续改进RDP,也推出了自己的HyperV。另外出现在IntelIDV阵容中的还有一个貌不惊人的小公司MokaFive,它的IDV产品在2013年被国内的联想拿来用了。IDV这个名词还被包装成了VOI,形成了概念误导,有人把VOI理解成是一种无盘工作站技术,其实是被绕晕了。


由此可以看出,IDV架构是硬件厂商试图挽回处理器销量而提出的桌面管理方案,它能够填充VDI产品方案中的诸多缺陷,但是却做不到对VDI取而代之,因为紧接着服务端虚拟化之后,更强大的一波浪潮来了,它就是云计算,发生在2013年的技术圈头等大事就是OpenStack社区终于在诸多开源云计算项目的竞赛中漂亮地胜出,这次又是Intel给力了。


云计算让VDI更上一层楼,从Desktop Virtualization变成了Desktop Cloud,又称为DaaS(Desktop-as-a-Service),云给这片干旱已久的桌面大草原带来了弹性调度、资源池超分、按需分配、虚拟网络、分布式存储、高可用等等雨水气息,它让长期以来VmWare和Citrix两大巨头的笼罩下的桌面虚拟化市场终于打开了新局面。云计算的核心理念与开源社区精神相辅相成,推动着OpenStack这样的开源云平台持续发展壮大,相对于长期演进出来的传统高成本、超复杂的VDI产品,OpenStack VDI从云计算的崭新理念出发,拨冗去繁,给VDI带来了低成本的享受,并且作为一个具备完整解决方案的云计算平台,OpenStack还为用户从桌面云起步,逐步过渡到服务器的云化、企业应用的云化以及未来的企业IT环境演化打开了一条前景广阔的上云之路。



回到本文开头,IDV除了继续和VDI扭打下去还能做些什么?参考唯物辩证法的根本规律,斗争背后总是隐藏着统一,桌面到底是跑在客户端还是跑在服务端上,都有其不可取代的缘由,IDV桌面由于其性能优势和离线应用的特色,在OpenStack桌面云中依然可以发挥最大化的作用。如今KVM早已完全融进Linux内核,成为裸金属版的Hypervisor,利用它作为IDV的虚拟化层,在IDV主机上提供带外管理接口,就可以和OpenStack实现对接,共享Glance镜像,使用Cinder的块设备资源实现IDV主机外部的数据存储功能,通过openvswitch实现与Neutron的虚拟网络对接等等深度融合。


OpenStack中进行VDI与IDV的深度对接可以让IDV在桌面云的浪潮中也有自己的立身之地,它可以最大化地利用云平台带来的各种丰富资源,与VDI融合起来。VDI是倚天剑,机动弹性,极简运维,IDV是屠龙刀,利刃出鞘,硬件体验,还支持离线应用。天下大势,分久必合,棋逢对手的VDI、IDV终能度尽劫波,相逢一笑,在桌面云的整合下齐心合力,让用户不再徘徊在痛苦的抉择中,如愿赢得最符合自身需求的体验。


欲知OpenStack如何实现将IDV纳入云中,且听下回更详细的技术分解。


Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐