唐兴助,解月江,马颖劲
(北京航天自动控制研究所,北京 100854)
基于OpenStack的桌面云的应用与挑战
唐兴助,解月江,马颖劲
(北京航天自动控制研究所,北京 100854)
随着云计算技术的不断完善和推广使用,桌面云作为云计算的一种应用形态越来越受到关注。近年来,桌面云业务在国内开始蓬勃发展,越来越多的人开始接受云办公的工作模式,桌面与数据分离,瘦终端代替传统PC是大势所趋。OpenStack作为云计算平台,在推动企业云转型的过程中有不可替代的优势,其开放性和良好的企业生态为其赢得了事实上的云计算架构标准。虽然在服务器虚拟化中,OpenStack表现不俗,但在桌面虚拟化应用场景下,原生的OpenStack离商用却还有一定的差距。通过对目前桌面云市场的发展现状进行调研,对OpenStack的发展趋势以及应用进行客观的分析,得出相关结论,对OpenStack的学术及工程研究有一定的参考意义。
OpenStack;桌面云;虚拟化;云计算
桌面云[1],顾名思义就是利用虚拟化技术,将原有分散的终端软件资源(含操作系统、应用软件、客户数据)集中地在云端管理起来,进行有效组织、安全存储、按需分配,利用服务器资源进行集中运算,并可以通过瘦客户端或者其他任何与网络相连的设备来访问跨平台的应用程序,以及整个客户桌面[2-4]。目前业界主流的模式是虚拟桌面基础设施(Virtual Desktop Infrastructure,VDI)[5],该词最早由VMware提出,相较于DaaS(Desktop as a Service)[6-7]模式,单从技术的角度看,两者其实是同一回事,主要区别在于服务器的位置以及如何付费。目前用户似乎并不习惯将自己重要的数据交由别人来托管,毕竟在信息时代,数据就是企业最重要的资产。
根据国际知名咨询与服务公司KPMG在2010年做的关于云计算的调查[8]中显示,将近60%的机构和公司认为云计算会成为未来IT的发展模式,已经有45%的机构在使用某种形式的云计算,而剩下至少32%的机构表示未来将采用云计算。在2015年Evoloveip公司做的一项关于桌面云市场的调查中[9],大约36.5%的用户称他们的机构已经使用了虚拟桌面,而另有10%左右的用户表示在一到三年内将使用桌面云。根据2015年国务院出台的国发{2015}5号文件《国务院关于促进云计算创新发展培育信息产业新业态的意见》[10]中提出,将加快推进云计算建设,将云计算作为战略产业予以支持。这表明,现在不管是政府还是企业都已开始认识到虚拟化技术带来的好处。从服务器虚拟化市场的成熟,到桌面云、应用虚拟化等产品的不断涌现,虚拟化技术已成为计算机技术发展的趋势[11]。
但从另一个角度看,大型企业及一些运营商客户仍有些疑虑,这些客户财力雄厚,并不缺乏资金支持,但对于数据的安全和用户的隐私有一定的担忧。桌面云采用集中化数据存储的方式,对组织来说,业务数据的安全性无疑提升了很多,但对于使用者来说,尤其是政府和事业单位等行业的员工,他们会担心个人数据集存储在云中心,可能会被管理员非授权查看,从而泄露了个人隐私。越是职位高、年龄大的员工,就越会存在类似的想法,从而会造成桌面云推广艰难的情况。
在国内市场的桌面虚拟化厂商中,大概可以分为两类。一类是有独立知识产权,能独立提供整套桌面虚拟化解决方案的厂商,比如VMware、Citrix、华为、云巢、深信服等,这些厂商有较大的研发团队,有自己的渠道政策,一般底层是基于开源的hypervisor(如Xen和KVM等),Citrix和华为是基于Xen基础上独立开发的,云巢和深信服是基于KVM的。还有一类是这些厂商的代理经销商,分布在全国各地,这些渠道商可能是和第一类厂商OEM合作,或者基于第一类厂商进行浅度定制出行业特色的桌面云产品,如华胜天成、申腾、实利通和、拓实科技、中企通讯等。对于绝大多数企业客户来说,提到桌面虚拟化,首先想到的当然是VMware和Citrix这些国际知名公司,因为无论从品牌知名度、产品成熟度,技术实力,还是市场份额,这些国际IT巨头的的确确在领导着桌面虚拟化的发展。然而,随着虚拟化技术的兴起以及市场需求的剧增,近些年国内也涌现出了不少虚拟化厂商,其中不乏一些发展势头较猛的,比如深信服、云端时代等。
表1是现在国内市场上能提供桌面云解决方案的主要厂商,这些厂商都有各自的渠道政策,其中华为在国内企业中实力较强,其他一些企业也以提供云计算解决方案为主要业务。
2.1 开源越来越受到欢迎
KVM和Xen都是开源的底层hypervisor,Xen是通过软件模拟的虚拟化技术,较为庞大和复杂,KVM是基于硬件的虚拟化技术,需要硬件虚拟化技术支持[12],比如Intel的VT-x和VT-d等,这种虚拟化技术轻巧而高效,已经集成到Linux内核中了,是未来发展的趋势。OpenStack是事实上的云架构标准[13],自诞生以来就受到了很大的关注,每年推出两个版本,现在依然处于快速发展当中,已经有越来越多的公司选择OpenStack作为自己的云计算平台。开源的一个重要特点就是可以解除厂商锁定,避免被一家公司绑架。
表1 国内市场上的桌面云厂商
2.2 云桌面替代传统PC是必然
在计算机行业里,一般来说,维护成本往往会比前期投入大很多,从业务价值的角度来看,桌面维护对组织业务发展并不创造直接的价值,没有带来生产力的提升,在这方面的投入越大,浪费就越多。传统模式下还需要批量采购PC,然后做系统镜像,接着帮助用户部署。而在整个PC生命周期中还会有修复补丁升级、软件更新等繁锁的工作。并且每过三四年时间,还要继续重复这个过程。在安全方面,信息资产在组织内的价值越来越高,PC模式下,信息资产的分散化管理使得信息安全的保护机制变得更加复杂:数据在本地PC存储,容易产生泄密事件,同时分散化的数据存储难以统一备份,面临数据丢失风险。如何去管理这些分散的信息资产已成为IT部门迫切需要解决的问题。总之,新型办公模式衍生出“简化管理、数据安全、移动办公”等需求,为了应对桌面运维的挑战,并更好地满足客户需求,“瘦终端+云桌面”替换传统PC势在必行。
2.3 国产化和自主可控不可或缺
在棱镜事件之后,国家重要机关对信息安全的重视不断增加,自主可控、国产化已经作为国内政府及事业单位的潜在采购要求,借助这个机会,国内的云计算公司将大有可为。众所周知,很多IT技术,包括操作系统、数据库、云计算等,国外都起步较早,技术更加完善成熟,而对于桌面虚拟化,随着这几年的技术突破,一些国产厂家逐渐具备了自主创新的核心传输协议,解决了操作体验流畅性、高清视频播放、外设兼容性等问题。相反,国外厂商在国内落地的过程中,却发现了一些水土不服的问题:方案复杂,实施难度大;多方整合,投资成本高;产品架构复杂,运维难度大,甚至超过传统PC的运维投入。如此种种,加之国家政策的支持,正是国内桌面云厂商利用差异化提升产品,发展创新的大好时机。
2.4 桌面云的安全可靠性依然是企业关注的重点
当桌面由本地移到云端之后,客户担心的是万一系统出现崩溃、蓝屏和突然关机等故障时,能否恢复,这是虚拟机级的HA,云计算企业必须能提供这一保障。桌面云的体验直接影响客户的信心。要让桌面云能替换本地PC,就必须提供同等甚至更好的用户体验,桌面是否流畅,播放视频是否卡顿,软件是否兼容,这些问题中,传输协议尤为关键。在调研的各云计算公司中,绝大部分都会重新优化传输协议,有的是基于开源的如Spice协议优化(如国云科技),有的是自己开发,协议是连接远程与用户的通道,在桌面云架构中占据着举足轻重的地位,必须作为核心技术予以重视。
一直以来,OpenStack在国内的应用主要集中于对成本敏感、技术架构要求较高的互联网企业,而众多的企业应用绝大多数均架构在国外昂贵的商业软件基础之上。除了因为OpenStack在时间上晚于商业软件推出的因素之外,造成这种局面的因素之一是OpenStack虽然可以满足互联网企业大量服务器虚拟化的要求,但一直缺少的桌面虚拟化功能使得OpenStack的“功能强大、开放灵活、代码安全、低成本”的优势无法发挥。除了历史因素外,在新建一个系统时企业很难采取分别建设服务器虚拟化平台与桌面虚拟化平台的策略,而是更多地希望通过一个平台来同时解决两个方面的问题。如今在社区里,OpenStack暂时还没有组件用来专门支持桌面云,所以基于OpenStack的桌面云距离商用生产还有一段距离,要让原生的OpenStack桌面云落地企业,还需解决以下关切。
3.1 安装部署
OpenStack的部署是一个庞大而复杂的问题,到最新版为止已经有至少11个组件,而正在开发和孵化的项目有至少5个,要把这些组件完整正确地部署到各节点并非易事。目前OpenStack的部署工具中较为方便的属Mirantis公司开发的Fuel部署工具[14],但Fuel部署工具并不灵活,比如不能以all-in-one的方式部署在一台节点上,对于多节点HA部署也有问题,而且Fuel部署完之后无法直接用于生产实践,需要做配置修改。所以需要有一套能更加灵活部署的工具。
3.2 端到端的管控(瘦终端管理软件)
OpenStack中提供了开源云的架构,但是在实际部署的云桌面解决方案中,往往需要加入端到端的管控功能,比如在瘦客户机中需要部署的管理软件,来对瘦终端的端口进行管控,确保未被授权的端口不可随意接入虚拟机。虚拟机故障无法绝对避免,当虚拟机出现无法远程连接的时候,需要能提供自助维护的功能,OpenStack默认的带有VNC的支持,但还需要集成到端管理软件中,为了降低管理员的负担,连接管理软件需要有桌面发放的功能,能统一对所有虚拟机发放补丁和安装软件等。
3.3 云系统安全性
按密级分配和存储虚拟机。在军工和保密安全行业,对于虚拟机的存储有按密级划分的要求,这种情况下往往需要对主机划分相应的集群,然后修改虚拟机的调度算法,使得在创建虚拟机的时候能够选择相应的密级,从而保证对应密级的虚拟机只能在对应密级的主机中存储,并保证不同密级的虚拟机不能混合存储。
3.4 虚拟机级的HA
作为一个私有云的商业解决方案,客户最看重的一点是数据的安全性,现在能看到的HA部署方式是用Fuel的HA多节点方式,但并没有达到预期效果。OpenStack目前没有对虚拟机级别的HA进行实际的支持,后续可能会增加。对于这一功能,最重要的三个步骤是:发现、隔离和恢复。首先发现虚拟机的故障,然后隔离故障的虚拟机,接着恢复发生故障的虚拟机,而OpenStack并没有相关组件进行很好的支持。
3.5 主机监控和报警管理
原生的OpenStack监控组件Ceilometer,是一个计费功能的组件,同时可以进行资源监控,但是还远远不够完善。各解决方案提供商都是用自己开发的或者其他开源的Linux插件来代替此组件的功能,比如用Nagios。但都不能集成到OpenStack的Dashboard组件里,单独的管理界面不利于管理员的维护,对原生的Ceilometer进行二次开发是一个可选的方案。同时对于日志的管理也不够方便,日志是系统运行中留下的非常重要的数据,但OpenStack一个如此庞大的系统,每天产生大量的日志,必须要有一个可视化的日志查看工具,而且应该将其集成到Horizon中统一管理。
3.6 桌面的流畅显示
桌面流畅与否直接影响用户体验。对于一般办公、高清视频播放和运行2D软件,如Photoshop、AutoCAD和Protell 99SE等,主要的瓶颈在于桌面传输协议的优化。对于3D设计软件,如3D MAX等,由于KVM对GPU直通技术和GPU虚拟化技术还不支持,而OpenStack的首选Hypervisor是KVM,支持的最好的也是KVM,所以如果需要3D功能,则需要考虑基于Xen来搭建,但效果还有待检验。
3.7 OpenStack的平滑升级
OpenStack的社区活跃程度很高,开发进度也相对较快,每年都推出两个稳定的版本,至今为止最新版是L版。有的版本改动程度小,但有的版本可能改动量会较大。作为基于开源OpenStack的桌面云,如果在其上做定制开发后,就锁定于某个版本不再升级,这似乎就偏离了社区的主线,所以如何做到在生产环境中,既不影响现有业务,同时还能稳定升级,这是一个必须解决的问题。
随着信息技术的发展,人们将逐步进入云计算时代,桌面云作为云计算的一种重要形式,正越来越受到欢迎。作为最大的开源云计算平台OpenStack,其桌面虚拟化应用方面离商用还面临着很大的挑战,但这也无法阻止其受欢迎的程度。在社区持续活跃,企业不断支持的情况下,仍对其充满信心,而作为云计算发展的公司,把握市场和技术发展的方向,将为其抢占市场获得先机。
[1] Mell P,Grance T.The NIST definition of cloud computing[J].Communications of the ACM,2011,53(6):50.
[2] 王 峰,江 峰,李朝阳.虚拟桌面及关键技术分析云计算时代的数据库研究[J].电信技术,2011(1):24-26.
[3] 张小斌.OpenStack企业云平台架构与实践[M].北京:电子工业出版社,2015:80-85.
[4] 占 海,张继勇.云落谁家?OpenStack基于场景的架构设计实践[M].北京:电子工业出版社,2016:185-188.
[5] 李 梅,罗南林,蔡建轩.基于VDI模式的桌面云管理平台设计与实现[J].计算机科学,2015,42(6A):345-348.
[6] Wang S T,Chang H Y.An adaptive virtual desktop service in cloud computing platform[J].Computer,Electrical,Automation,Control and Information Engineering,2014,8(4):550-554.
[7] Patil P U,Ambavkar P S,Meshram D B B,et al.Desktop virtualization using SaaS architecture[J].International Journal of Advanced Research in Computer Engineering & Technology,2012,1(4):666-670.
[8] 2010 cloud computing survey[R/OL].2010.https://www.kpmg.com/ES/es/ActualidadyNovedades/ArticulosyPublicaciones/Documents/2010-Cloud-Computing-Survey.pdf.
[9] The state of the desktop survey-virtual desktops[R/OL].2015.http://www.evolveip.net/2015-the-state-of-the-desktop-survey-virtual-desktops.
[10] 国务院关于促进云计算创新发展培育信息产业新业态的意见[S/OL].2015.http://www.gov.cn/zhengce/content/2015-01/30/content_9440.htm.
[11] Sultana A,Daimary B,Chettri M,et al.Virtualized remote web desktop[C]//3rd national conference on emerging trends and applications in computer science.Shillong:[s.n.],2012:270-273.
[12] 肖 力,汪爱伟,杨俊俊,等.深度实践KVM[M].北京:机械工业出版社,2015:1-10.
[13] Van V N,Chi L M,Long N Q,et al.A performance analysis of OpenStack open-source solution for IaaS cloud computing[C]//Proceedings of the second international conference on computer and communication technologies.[s.l.]:Springer,2016:141-150.
[14] 徐 磊,王 磊.基于OpenStack的私有云搭建的研究[J].信息通信,2014(5):4-7.
Application and Challenge of Desktop Cloud Based on OpenStack
TANG Xing-zhu,XIE Yue-jiang,MA Ying-jin
(Beijing Aerospace Automatic Control Institute,Beijing 100854,China)
As continuous improvement and promotion of cloud computing technology,much more attention is being paid to the desktop cloud which is a new form of application in cloud computing.Recently,since the desktop cloud business in the civil begins to flourish,more and more people start to accept working on the cloud.It is the irresistible trends that thin client alternative to traditional PC and desktop will be separated from data.OpenStack,as a cloud computing platform,has an irreplaceable advantage in the process of promoting enterprise cloud transformation,whose openness and good companies’ ecology has earned its factual status of cloud computing architecture standards.Although it does well in server virtualization,there is still a gap from commercial application in desktop virtualization sceneries for the native OpenStack.By making a survey for the development situation of recent desktop cloud market,an objective analysis of application and trends for OpenStack is carried out.It is concluded that it is a reference for academic and engineering research of OpenStack.
OpenStack;desktop cloud;virtualization;cloud computing
2016-03-26
2016-06-29
时间:2017-01-04
国家自然科学基金资助项目(61403355)
唐兴助(1993-),男,硕士研究生,研究方向为云计算与大数据;解月江,研究员,研究方向为云计算与大数据。
http://www.cnki.net/kcms/detail/61.1450.TP.20170104.1039.070.html
TP39
A
1673-629X(2017)02-0147-04
10.3969/j.issn.1673-629X.2017.02.033