APP下载

基于OpenStack的虚拟云桌面系统建设方案

2017-06-01武佳宁

微型电脑应用 2017年5期
关键词:桌面机房客户端

武佳宁

(陕西学前师范学院, 西安 710100)

基于OpenStack的虚拟云桌面系统建设方案

武佳宁

(陕西学前师范学院, 西安 710100)

基于OpenStack的虚拟云桌面系统是OpenStack与云桌面的深度融合。分析了虚拟云桌面系统的应用优势,设计了基于OpenStack的虚拟云桌面系统整体架构和主要管理模块,实地部署了虚拟云桌面机房系统并给出了建设方案。

虚拟云桌面; OpenStack; 云计算

0 引言

数据集中和系统集中管理是云计算给我们带来的新观点,虚拟云桌面系统把用户个人PC的应用和数据都转移到了统一的数据中心,这样合理的分配管理资源,避免了数据冗余和浪费,通过统一的数据中心安全上也更进了一步,更有效的防止重要数据流失。[1]不管是传统办公还是公用机房,独立PC的使用都会造成高能耗低效率、难运维、高成本、信息易流失等问题[2,3]。随着云计算技术的普及,虚拟化云桌面把用户完整的桌面全部统一到服务器中存放,用户使用不同的终端通过网络访问桌面环境,而终端只需要有显示功能和一般处理能力就够了。[4,5]虚拟化云桌面把资源统一认证统一管理,合理资源调配,方便了企业办公学校机房等的系统运维,运维人员在数据中心完成对每个用户的桌面管理,统一进行系统升级杀毒,保障了系统的安全也降低了工作强度。虚拟化云桌面系统服务新模式实现了传统PC与云计算技术相结合,是企业事业单位更专注于自身业务拓展,提高IT资源利用率。

1 虚拟云桌面系统的应用优势

1.1 统一配置便于维护管理

虚拟云桌面系统利用云计算的虚拟化技术,用服务器整合了基础设施复杂的现状,让运维管理人员把对零散PC的管理变成对几台服务器进行集中管理, PC在服务器中合并后极大地降低了单点故障率,强大、灵活的集中管理模式提高了服务保障水平,运维人员从机械劳动中解脱出来。数据中心能够对物理服务器进行虚拟分区,提供最合适的虚拟环境,从而改变单机能部署单个应用的弊病,提高服务器的利用率,让资源分配更加合理。利用虚拟环境进行安全隔离也实现了应用程序隔离的目的,保障了多用户环境下的数据安全。如果遇到数据迁移可以通过备份虚拟环境就可以实现业务零影响,高质量保证备份恢复工作。用户终端越多越能体现出虚拟云桌面系统的运维管理优势。

1.2 系统可靠度高数据存储更安全

虚拟云桌面系统所有数据和服务应用软件都在服务器中,如果用户终端出现故障不会造成数据丢失或者受损,服务器的三级主动防御体系可以抵御ARP等病毒攻击,保障了企业机密数据的安全,确保了高校科研学术数据的完整。即使用户当前使用的终端故障或是丢失也不影响业务的连续性,只需利用其它终端甚至手机就可以登录云桌面继续工作学习。由于服务器的安全级别高,即使是遇到灾难,云桌面服务器的抗灾恢复能力也远远大于普通PC。终端只负责传输界面显示,运算处理都来自数据中心,这无疑加大了企事业单位对敏感机密数据的控制,从管理角度也同样保护了数据安全。

1.3 降低购置成本节能减排

虚拟云桌面系统的购置成本相对于传统PC要低,如果终端较少可能优势不明显,终端量越大采购成本优势越高,并且后期的运维成本也会大大降低,并且使用年限也会延长降低设备重置率。如果是使用瘦终端使用能耗只有传统PC的百分之一,大范围使用节能效益和经济效益将会更明显。对于给类旧PC都能够集中利用,也可以利用现有服务器搭建虚拟云桌面系统,把旧设备的潜能发挥起来提高设备及网络利用率最大程度节省成本。

2 基于OpenStack的虚拟云桌面系统架构

2.1 开源云计算平台选择

当下的开源云计算平台有四大主流产品,分别是OpenNebula、Eucalyptus、C1oudStack和OpenStack[6]。OpenStack的服务由Python开发,如数据库使用的是SQLAlchemy,服务程序端用的是WSGI,OpenStack在SOA和服务化组件上是4个产品中做的最好的,核心层包括Nova计算服务、Swift存储服务、keystone身份服务、Glance颈项服务等十多个开发项目,每个组件都大量采用插件设计和框架设计[7,8],与其他4个产品相比性能优势强很多,具体性能分析,如表1所示。所以基于OpenStack的诸多优势,虚拟云桌面系统采用OpenStack作为的开发平台。

表1 开源云计算平台性能对比表

2.2 基于OpenStack的虚拟云桌面整体架构和模块设计

我们选择通过OpenStack开源云计算平台来开发的虚拟云桌面系统,是面向个人用户的远程客户端虚拟化服务架构。

该虚拟云桌面系统主要从三大部分架构,如图1所示。

图1 基于OpenStack的虚拟云桌面整体架构

第一部分是个人PC及各类移动客户端组成的虚拟桌面客户端,客户端通过桌面传输协议传输云中数据;第二部分是虚拟桌面管理模块、用户管理模块、调度管理模块、调用管理模块和数据库组成的虚拟桌面云系统的管理控制子系统,用来管理控制一个或多个OpenStack的集群;第三部分是开源云计算平台OpenStack的五大核心项目组件构成的虚拟资源管理子系统,该子系统的作用就是提供基础环境给虚拟桌面支持其正常运转。

下面我们着重介绍虚拟桌面云系统的管理控制子系统的5个模块:

2.2.1 虚拟桌面管理模块

虚拟桌面管理模块从字面就能看出是管理个人PC及各类移动客户端组成的虚拟桌面。从用户的角度看,用户通过验证成功登陆云桌面系统后就可以自由操作属于自己定制型的虚拟桌面,用户可以对虚拟桌面进行删除、修改、重启、系统恢复等等操作。从系统内部处理的角度看,虚拟桌面管理模块包含虚拟创建、虚拟删除两部分。从用户发起的任务列表中发现任务并进行任务批量创建,在创建好虚拟机的基础上为其分配IP地址,最后把虚拟机列表保存在数据库中;当用户使用完毕退出系统后,系统自动删除虚拟机并清除数据库记录。

2.2.2 用户管理模块

用户管理模块提供虚拟桌面云系统的用户登陆注册认证服务,该功能需要OpenStack虚拟资源管理子系统提供交互服务,当用户注册登陆时通过用户管理模块得到一块令牌,该令牌通过OpenStack虚拟资源管理子系统进行验证,通过验证的令牌返回用户管理模块,用户通过验证登陆成功。

2.2.3 调度管理模块

当虚拟云桌面系统使用率高的话,服务器的负荷会比较大,调度管理器模块专门解决多线程同时启动负载过高的调度问题。本系统采用的方案是定时调度轮流处理任务的方式,调度管理器模块定时启动多线程运转各个进程,给隔一段时间就统计每个线程的负荷情况,更新负载均衡列表,当新的进程需要启动的时候就可以把其调度到负载较小的OpenStack子系统中,当运转负荷小的时候就只有主线程在线并且处于待机睡眠状态。

2.2.4 调用管理模块

调用管理模块是虚拟桌面云系统的管理控制子系统与外界的交互的通道,用户通过该模块与OpenStack虚拟资源管理子系统交互,对OpenStack的每个API发起调用。心跳管理的作用是每隔一段时间发送心跳信息给OpenStack所有的API , OpenStack子系统对这个心跳信息做出回应,以此看来确认OpenStack子系统正在正常运行,OpenStack子系统回复的信息包括CPU使用率、消息队列、计算节点等数据。

2.2.5 数据库模块

所有的系统都缺少不了数据库,本系统设计的数据库不直接与其他非数据库模块直接交互,而是使用虚拟接口,这样不仅可以实现访问数据库的接口统一调配,也可以精简访问数据库的操作过程,这些都是由数据库模块提供具体访问服务的。

3 虚拟云桌面机房系统部署及建设需求

3.1 虚拟云桌面机房系统部属

虚拟云桌面机房系统分为3部分部署,如图2所示。由服务器主控程序、客户端程序、Web 服务器统一管理程序。服务器主控程序安装在机架式硬件服务器或刀片式服务器上,其主要功能是提供系统的管理服务(如管理员登陆管理界面、系统认证U-KEY的识别和读取、策略的制定及部署等);客户端程序部署于前端的PC终端上与服务器的通讯,接受执行策略的部署,同时将PC终端的运行情况汇总反馈给服务器;Web service统一管理程序部署在主控服务器上,输入服务器管理地址管理员即可对系统内的服务器进行查看或操作,并支持多个管理员同时在线来提高系统的安全性。桌面云系统部署时,在千兆主干、百兆到桌面的网络条件前提下,采用标准TCP数据传输控制协议传输数据,并支持第三方DHCP、VLAN划分、路由等网络环境部署。虚拟云桌面机房系统部署,如图2所示。

图2 虚拟云桌面机房系统部署

下面各个服务器及组件的关系:

3.1.1 Web Server

虚拟云桌面机房系统是基于网络的应用,配置在Web服务器上以实现web访问云桌面系统。我们部署Web服务器选用的开发语言是Python3.3,服务器操作系统选用Ubuntu 13.04 server这种以桌面应用为主的Linux操作系统,并在安装完成操作系统后安装uWSGI和Nginx已完成配置Django1.6.1这种开源的Web应用框架。

3.1.2 Openstack Controller

OpenstackController服务器是Openstack的主控中心,我们把它部署在Ubuntu 13.04 server版本的Linux操作系统上。它分成3个主要组件,认证系统组件keystone、网络和地址管理组件Neutron、API计算组件Nova和镜像服务组件Glance。

3.1.3 Openstack Compute

Openstack Compute服务器是虚拟云桌面机房系统计算中心,同样部署在Ubuntu 13.04 server版本的Linux操作系统上。主要安装Nova组件提供计算服务,为VMware提供调度、迁移和控制等虚拟服务。Compute服务器承载着虚拟机,可以在使用过程中增加虚拟机的数量,具有可扩展性。

3.1.4 Database

虚拟云桌面机房系统部署数据库是PostgreSQL9.3.1,我们把它可以单另部署一台服务器,也可以直接部署在Web

服务器中,若直接部署在Web Server中,那只需要安装Django的PostgreSQL的驱动就可以操作数据库,因为Django自带面向模块的映射器。

3.1.5 Client Server

客户端服务器用来运行web客户端,他需要部署一些接入软件来支持各种不同的操作系统,可以直接部署在Web服务器中。

3.2 客户端接入系统需求

虚拟云桌面机房系统客户端接入应满足如下要求:客户端可从多种网络环境下访问云桌面,并且在网络性能较差的情况下(如带宽不足、网络性能不稳定、断网等)终端云桌面环境仍然可以正常使用。单台客户端设备访问桌面云系统时可以获得一种或者多种系统环境(如Win10/Vista等个人操作系统、Win2008/2012等服务器操作系统、Linux系统、具体的应用软件等)。客户使用云桌面时,云桌面的应用程序和界面应具备支持3D图形渲染、支持高清视频、支持用户自定义桌面和应用软件等用户体验。

3.3 服务器端运维管理需求

虚拟云桌面机房系统运维管理应满足如下要求:管理员可以在一个界面内自由切换完成对所有管控服务器的管理,并在不影响用户使用的情况下维护系统环境;服务器端可以批量设置修改客户端的IP地址、机器名等信息, 并远程对客户端进行桌面协助和远程开关机,并可以在用户授权下进行屏幕查看远程命令,消息的推送;服务器运维平台在负载允许的前提下尽可能满足用户个性化设置,面临大规模、复杂的云桌面部署环境,控制台管理可以极大地降低和简化管理负担,提高管理率和用户满意度;虚拟云桌面机房系统在运行过程中,能够对云桌面和应用程序的相关数据进行在线备份,并在需要的时候进行恢复。

3.4 服务器端参数配置

虚拟云桌面机房系统服务器设备配置参数如表2所示。

4 总结

通过对基于OpenStack的虚拟云桌面系统架构的设计和对虚拟云桌面机房系统的实地部署及建设,虚拟云桌面系统满足了大部分机房的要求,该系统充分利用了虚拟化技术的高密度、易管理特性,不仅提高了服务器资源利用率还降低了成本。把传统虚拟桌面通过OpenStack开源云计算平台来开发,就把OpenStack自身优势融入了云桌面系统中,解决了企业事业单位机房建设、管理维护、用户操作等问题,实现了统一标准化管理、数据安全管控、节能减排降低成本的目标。

表2 虚拟云桌面机房系统服务器配置表

[1] 李小宁,李磊,金连文等.基于OpenStack构建私有云计算平台[J].电信科学,2012,9:2-7.

[2] 张毅.基于OpenStack的虚拟桌而云系统服务端设计与实现[D].广州:华南理工大学,2013:23-25.

[3] 朱近之.智慧的云计算[M].北京:北京电子工业出版社,2010:125-130.

[4] 何一辉,向俊,黎竹娟.云计算与远程教育[M].南宁:广西民族出版社,2014:237-238.

[5] 雷万云.云计算技术、平台及应用案例[M].北京:清华大学出版社,2011:17-19.

[6] 耿向东. 走下云端,让云计算落地开花[J]. 中国新通信,2012,03:49-52.

[7] 邓倩妮,陈全.云计算及其关键技术 [J].计算机应用,2009,29:71-73.

[8] 雷万云.云计算技术、平台及应用案例[M].北京:清华大学出版社,2011:38-39.

Construction Scheme of Virtual Cloud Desktop System Based on OpenStack

Wu Jianing

(Shaanxi Xueqian Normal University, Xi’an 710100,China)

Virtual cloud desktop system based on OpenStack is a deep integration of the OpenStack and cloud desktop. This paper analyzes the application benefits of the virtual cloud desktop system. It designs the overall structure and the main management module of the virtual cloud desktop system based on OpenStack. It also deploys a computer room system for virtual cloud desktop, and gives out its construction scheme.

Virtual cloud desktop; OpenStack; Cloud computing

陕西学前师范学院校级教学改革项目 (16JG036Y)

武佳宁(1981-),女,西安人,高级工程师,研究方向云计算、虚拟化技术。

1007-757X(2017)05-0031-04

TP311

A

2016.12.25)

猜你喜欢

桌面机房客户端
基于APP在线控制双挤出头FDM桌面3D打印机的研制
桌面云技术在铁路行业中的应用
如何看待传统媒体新闻客户端的“断舍离”?
数据中心机房气流组织研究在某机房的应用
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
大枢纽 云平台 客户端——中央人民广播电台的探索之路
桌面装忙
N通信公司机房节能技改实践
新型有线电视机房UPS系统的配置