高校云服务平台中自助云服务系统的实现
2014-06-27邵雨舟史虹湘李志伟
刘 颖,邵雨舟,贾 岚,史虹湘,李志伟
(北京经济管理职业学院信息学院,北京 100102)
高校云服务平台中自助云服务系统的实现
刘 颖,邵雨舟,贾 岚,史虹湘,李志伟
(北京经济管理职业学院信息学院,北京 100102)
基于高校校园网云服务平台,提出自助云服务系统实现方法。提供的自助云服务包括校园信息推送、个人特色服务、虚拟机按需服务和云存储服务等。阐述了自助云服务子系统的系统设计,深入分析了不同服务的工作流程,介绍了实现方案,为实现自助云服务提供了可行思路和具体的实施方法。
自助云服务;信息推动;个人特色服务;虚拟机;云存储
云计算是一种利用互联网实现随时随地、按需、便捷地访问共享资源池的计算模式。随着“云+端模式”的深入发展,逐渐分化出了3个平台,即终端平台、云平台以及在云和终端之上的商务、社交等云服务平台。终端平台包括Andriod、苹果、Windows等终端操作系统。云平台由国内外大型企业及运营商提供,例如亚马逊[1]、谷歌[2]、微软[3]、AT&T[4]等公司构建的公共云。服务平台则可以提供丰富的应用服务。苹果的iCloud[5]、百度的百度云[6]则实现了云存储服务。
如何引入云计算、建设云服务平台是推进高校信息化进程的一个研究方向。对高校云服务平台的研究主要有如下几个方面。
1)虚拟实验室平台
在现有高校使用云服务的研究中,基于云计算的虚拟实验室是比较热的研究。基于云计算理念的虚拟实验教学系统[7]利用云计算平台,将本地或异地的不同实验用户与虚拟实验室联结起来,共享一个虚拟的实验空间。用户通过浏览器开展远程实验和本地实验,从而实现虚拟实验教学和管理的目的。
基于云计算的虚拟科研环境[8]利用国家网格中可共享的虚拟机资源,通过网格技术来访问和使用资源,实现国家网格资源共享,为不同学科的科研提供在线云服务。
2)基于云计算的数字校园
高校的数字校园项目[9]把学校的管理系统移植到数据中心,云计算为学校的行政管理部门服务。财务系统、人事系统、档案系统、研究生系统等都在云里存储,各部门访问云里的数据。
高校统一信息平台建设[10]把基础设施分为教务系统虚拟服务器组、人事系统虚拟服务器组和科研管理虚拟服务器组。用户通过云门户服务形式登录并申请所需的资源。
3)借助公共云提供特定服务
高校借助亚马逊EC2构建校园的云服务系统[11],提供特定的服务。比如允许用户创建web服务器、视频服务器、存储服务器等。
现有的研究能满足师生部分教学需求,但没有完全解决高校信息化建设和师生需求之间的矛盾。师生在教学中遇到的问题主要有以下几点:
1)教学资源利用率低
师生离开办公室或实验室后,办公电脑、实验室即空闲,硬件、软件资源利用率不高。
2)学生学习延续性受阻
学生在实验室进行课堂学习,执行部分实践操作,如果课后或实习期间想继续学习、完善学习内容,则需要在自己的机器上复制学习环境。这会影响学习的延续性。
3)不支持移动教学
随着师生移动性的增加,现有的教学不局限于固定位置的办公和学习。学生外出实习的机会越来越多,实习期间没有必须的学习、实验环境,包括安装了教学软件的计算机、学习资料等。老师在外办公,如果有紧急教学任务,也没有必须的备课、教学环境。
4)手机终端存在瓶颈
师生外出期间可能不会随身携带电脑,但一定会携带手机。而手机的CPU、内存等硬件指标和存储容量受机体大小和电池容量的限制,目前手机还无法实现需要大量运算的应用。如果教学需要软件支持,则无法在手机上完成。
将云计算合理有效地应用到教学环境中辅助教学科研工作,能解决师生需求,也是发展的方向。高校校园网云服务平台[12]提出了建设一个用户参与、用户自助定制服务的云服务平台。本文设计了基于高校校园网的云服务平台,重点研究了如何构建其中的自助云服务子系统。
1 校园网云服务平台
校园网云服务平台包含数据中心和应用服务等两类硬件和软件设施。云服务平台框架如图1所示。
图1 云服务平台框架
用多台服务器和存储设备组成一个数据中心,实现云计算功能。基于数据中心,把基础的计算和存储资源开放给用户,直接提供虚拟机,实现基础设施即服务IaaS。管理员为每个师生分配1台虚拟计算机,安装基本的操作系统。师生通过1个能联网的瘦终端、1部手机、1台平板电脑就能连到云服务平台,输入用户名和密码即可登录自己的虚拟机。用户在虚拟机上访问因特网、安装教学软件、准备教学材料、存放个人资料,总而言之,和普通的电脑无区别。所有接入互联网的场所,通过登录虚拟机就能实现办公、授课和学习。
基于虚拟机服务,提供了自助云服务,鼓励用户按需定制服务。待实现的自助云服务包括校园信息推送、个人特色服务、虚拟机按需服务和云存储服务等4种。
1)校园信息推送
目前校园信息发布形式单一。学校、院系、班级的公共信息主要通过学校网站主页、师生邮箱等途径发布,无法保证所有人都能看到这些信息。部署云服务平台后,各院系、行政部门等单位管理人员可登录自助云服务系统,选择自助信息发布,提供接收信息的用户id、发布的信息内容、信息有效期。后台管理系统根据用户信息和虚拟机运行管理信息,向特定人群推送信息。
2)个人特色服务
普通用户均可登录自助云服务系统,提交云服务申请,提供必要的服务信息。当用户登录自己的虚拟机时,后台系统查询用户定制的云服务,获取或自行生成服务数据,向虚拟机发送服务数据。服务数据可包括课表提醒、天气信息、系统维护命令等。
3)虚拟机按需服务
包括个人虚拟机的升级服务和单位或学生社团临时或长期租用虚拟机。个人用户根据教学需要,有增加硬盘空间、提高CPU性能、增加内存大小的需求。院系或社团根据工作需要租赁虚拟机,搭建网站服务器、FTP服务器等。用户通过自助云服务系统提交申请,管理人员分配虚拟资源。
4)云存储服务
师生在自助云服务系统上申请或撤销存储空间,存储空间以HTTP、FTP、文件夹链接等方式访问。
为了提供形式多样的自助云服务,需要建设自助云服务子系统,下面将探讨如何实现该子系统。
2 自助云服务子系统设计
自助云服务子系统分为前端和后台2部分。前端设计向用户呈现一个友好的自助服务定制界面,用户登录该页面就可以进行服务定制。后台系统则根据服务定制请求提供云服务。自助云服务子系统架构如图2所示。
图2 自助云服务子系统架构
前端系统包括Web服务器,后台系统包括用户自助服务数据库、控制模块和管理模块。数据库中存放服务信息,不同服务采用不同的数据存放形式。控制模块划分为自助服务控制和虚拟机控制2个子模块。管理模块划分为用户管理和虚拟机管理2个子模块。用户管理子模块以用户id为索引维护着用户信息,包括班级、院系、所使用的虚拟机id、当前是否在线。虚拟机管理子模块以虚拟机id为索引维护虚拟机信息,包括虚拟机物理位置、虚拟资源使用情况等。Web服务器、控制模块、管理模块、虚拟机之间采用socket通信。不同自助服务的工作流程有差异。本节将设计每类自助服务的工作流程。
2.1 校园信息推送
目前校园信息发布形式较单一,学校、院系、班级的公共信息主要通过学校网站主页、师生邮箱等途径发布。为了信息发布渠道多元化,向各院系、行政部门等单位的指定人员开通向师生发布公共信息的自助服务功能。例如,信息学院的教学管理员具有向本学院师生发布信息的权力。如果有调课安排,管理员登录自助服务定制界面,选择发布信息功能,输入/选择/导入受影响班级的学生和教师id,填写待发布的信息内容,点击确认即可。后台系统根据师生id把该信息推送给对应师生的虚拟机。虚拟机上的服务代理模块接收该信息,并呈现给用户。具体工作流程如图3所示。
图3 自助信息发布流程
1)部门管理员登录自助服务页面,选择自助信息发布,提供接收信息的用户id、发布的信息内容以及信息有效期;
2)将自动分配的信息id和部门管理员提供的信息保存到数据库中;
3)向当前在线的用户发送信息。通知自助服务控制模块推送信息,提供信息id;
4)自助服务控制模块根据信息id查询用户自助服务数据库,获得用户id和信息内容;
5)根据用户id向用户管理模块查询用户是否上线,如果上线,用户管理模块返回虚拟机id;
6)通知虚拟机控制模块发送信息,提供虚拟机id和信息内容;
7)根据虚拟机id向虚拟机管理模块请求虚拟机物理位置;
8)向该用户登录的虚拟机发送信息,比如会议通知、放假通知等。虚拟机上接收代理模块接收并显示信息;
9)对于当前离线的用户,当他们登录时,用户管理模块查询用户自助服务数据库,根据用户id查看该用户是否有需要发送的信息;
10)如果有待发送的信息,通知自助服务控制模块向该用户发送信息。提供信息id、用户id和虚拟机id;
11)根据信息id和用户id查询信息内容和有效期;
12)如果信息还在有效发送期内,通知虚拟机控制模块发送信息,提供虚拟机id和信息内容;
13)和第7)步一致;
14)和第8)步一致。
2.2 个人特色服务
为了让云服务平台更好地为师生服务,本文设计了诸多方便师生教学、生活的自助服务。例如,用户按照规定格式导入自己的课表,当他们登录虚拟机后,后台服务程序依据当前时间点推送当天和第二天的课表。若用户定制了天气提醒服务,则后台服务程序在用户登录后,推送天气信息。若用户希望定时对虚拟机进行系统维护,比如删除临时文件、进行磁盘整理,则用户选择服务周期,后台服务程序定期执行服务操作。师生登录自助服务定制界面,进入个人特色服务专区,点击某个服务,输入信息,然后提交申请。后台系统各模块协作执行该服务,工作流程如图4所示。
图4 个人自助服务流程
1)用户登录自助服务页面,提交服务申请。如果要申请课表提醒服务,则根据提示录入课表;
2)将用户申请的自助服务信息存放到数据库中,以备后台系统执行自助服务时查询。用户下次登录虚拟机时后台系统就可以执行自助服务;
3)当用户登录虚拟机时,用户管理模块查询用户自助服务数据库,根据用户id查询是否有自助服务;
4)如果检测到该用户定制了自助服务,则通知自助服务控制模块执行服务,携带用户id和虚拟机id;
5)根据用户id,自助服务控制模块查询用户自助服务数据库,获得对应的服务数据;
6)自助服务控制模块通知虚拟机控制模块,向虚拟机发送自助服务信息,携带虚拟机id和服务数据;
7)虚拟机控制模块根据虚拟机id向虚拟机管理模块请求虚拟机物理位置;
8)虚拟机控制模块向该用户登录的虚拟机发送服务数据,比如课表、天气信息、系统维护命令。虚拟机内置服务代理模块,与虚拟机控制模块建立TCP连接,接收服务指令并执行相应的服务。
2.3 虚拟机按需服务
师生因为教学安排需要使用某软件,若该软件消耗较多内存和CPU,则普通的虚拟机配置不能满足教学要求。教学管理员登录自助服务定制界面,选择虚拟机按需服务,提供待升级虚拟机对应的用户ID,需要的性能指标,然后提交申请。云服务平台管理人员根据用户请求,手工提升或降低虚拟机性能。此外,院系或社团需要独立的虚拟机构建网站服务器、FTP服务器,则通过自助服务定制界面申请新虚拟机,云服务平台管理人员审核请求,手工分配一台新虚拟机,安装基本的操作系统和应用软件、进行基本的配置。
1)云存储服务
师生需要存储大批量文件(比如影视素材、日志文件等),虚拟机提供的基本存储空间不满足需要,则可登录自助服务定制界面,申请云存储服务,提供需要的存储大小。云服务平台管理人员手工分配存储空间,让用户以HTTP、FTP、文件夹链接等方式访问。
2)自助云服务子系统实现
自助云服务子系统在linux环境下实现。自助服务网站由Apache和Tomcat搭建。虚拟机运行服务代理进程。用MySQL实现用户自助服务数据库。控制模块和管理模块分别用控制进程和管理进程实现。每个进程用多线程方式实现各子模块功能,系统进程设计如图5所示。
控制进程内有3个线程。其中 socket select线程负责监听控制层和外部其他模块的TCP通信,即监听web服务器、管理进程和虚拟机向控制进程发来的消息。Socket select线程监听到消息后,构造内部消息,传递给进程内对应线程。线程之间采用消息队列方式传递信息。线程向外部其他模块发送消息则直接调用socket API。管理进程实现方式和控制进程类似。进程内和进程间的线程采用消息驱动的异步通信方式。线程从消息队列中提取消息进行处理,如果期间需要向其他线程发送消息,发送后不需要等待回应,则保存当前处理状态,然后从消息队列中提取新消息进行处理。线程间传递的消息以〈消息名(携带参数)〉表示。
图5 自助云服务子系统进程设计
控制进程和 web服务器之间传递的消息包括:
WEB2CTRL_SENDMSG(msgid):web服务器通知自助服务控制线程发布信息。
控制进程和管理进程之间传递的消息包括:
MGR2CTRL_EXC_SRV(userid,vpid):用户管理线程通知控制进程执行自助服务。
CTRL2MGR_QUERY_ONLINE(userid):自助服务控制线程查询用户使用的虚拟机id。
MGR2CTRL_RESULT_ONLINE(userid,vpid):用户管理线程回应虚拟机id。
CTRL2MGR_QUERY_LOC(vpid):虚拟机控制线程查询虚拟机物理位置。
MGR2CTRL_RESULT_LOC(vpid,phyloc):虚拟机管理线程回应虚拟机物理位置。
MGR2CTRL_SEND_MSG(msgid,userid,vpid):用户管理线程通知控制进程发布信息。
控制进程向虚拟机传递的消息包括:
CTRL2VP_REQUEST_SRV(srvbody):虚拟机控制线程向用户虚拟机上的服务代理进程发送自助服务执行命令。
CTRL2VP_DISP_MSG(msgbody):虚拟机控制线程向用户虚拟机上的服务代理进程发送信息发布请求。
控制进程内传递的消息包括:
CTRL_SERV2VP_EXC_SRV(vpid,srvptr):自助服务控制线程通知虚拟机控制线程执行自助服务。
CTRL_SERV2VP_DISP_MSG(vpid,msgptr):自助服务控制线程通知虚拟机控制线程发布信息。
控制进程是自助云服务子系统的核心进程。下面对其线程进行详细介绍。自助服务控制线程工作过程,即对消息的处理流程如图6所示。
图6 自助服务控制线程设计
线程监听消息队列,如果有消息,根据不同消息类别进行处理。
虚拟机控制线程主要负责确定虚拟机位置,向虚拟机的服务代理进程推送信息或发送服务请求,其工作过程如图7所示。
3 结束语
高校部署云服务平台后,师生无论处于何地,都可以通过移动终端或便携式计算机登陆虚拟机,工作和学习不受时间和地点的限制。自助云服务子系统实现了师生根据自身需求申请服务的功能。
校园信息推送使学校和各学院的管理人员可以自助发布信息,拓展了信息发布渠道,加强了校园信息共享,为师生提供的个人特色服务方便了教学和生活;虚拟机按需服务和云存储服务能降低学校基础设施建设成本,实现绿色校园;对用户来说,操作过程也较容易,即登录自助服务定制界面,提供必要的信息,点击确定即可。
高校引入云计算是校园信息化建设的必然趋势。本文基于高校的云服务平台,提供了自助云服务子系统的详细设计方案和实现方法。下一步将研究云服务平台和物联网相结合[13],为师生提供更多优质服务。
图7 虚拟机控制线程设计
[1] Amazon EC2[EB/OL].http://aws.amazon.com/ec2.
[2] Google App Engine[EB/OL].http://code.google.com/ appengine/.
[3] Microsoft Azure[EB/OL].http://www.microsoft.com/ windowsazure/.
[4] AT&T Cloud[EB/OL].www.attcloudarchitect.com.
[5] Apple Inc.iCloud[EB/OL].https://www.icloud.com/.
[6] 百度云[EB/OL].http://yun.baidu.com/.
[7] 鲁慧民,刘刚.基于云计算理念的虚拟实验教学系统设计探讨[J].实验技术与管理,2012,29(4):334-338.
[8] 于建军,狄焰亮,董科军,等.科研在线:云服务模式的网络虚拟科研环境[J].华中科技大学学报:自然科学版,2011,39(SI):33-37.
[9] 杨玉宝.基于云计算平台的数字校园建设方案_以广州大学数字校园建设为例[J].中国教育信息化,2012 (8):9-12.
[10]王爱清,赵冬生.云计算环境下高校校级统一信息平台建设探讨[J].实验技术与管理,2011,28(5):282-285.
[11]钱戴明,乐嘉锦.云计算在校园多媒体系统中的应用[J].计算机应用与软件,2011,28(12):239-242.
[12]刘颖,刘淼晶.高校校园网云服务平台建设研究[J].北京市经济管理干部学院学报,2012,27(4):67-70.
[13]吕倩.基于云计算及物联网构建智慧校园[J].计算机科学,2011,38(10):18-21.
(责任编辑 杨黎丽)
Implementation of Self Cloud Service Sub-system in Cloud Service Platform of Campus
LIU Ying,SHAO Yu-zhou,JIA Lan,SHI Hong-xiang,LI Zhi-wei
(School of Information,Beijing Institute of Economic Management,Beijing 100102,China)
Based on the cloud service platform in campus,a self cloud service system is implemented.The self cloud service includes information pushing in campus,personal service,on-demand virtual PC service,cloud storage service,and so on.First of all,the system design of cloud service platform is implemented.Then,the work flow of different services is analyzed.At last,the implementation scheme is described.It provides a feasible and concrete method for implementing the self cloud service system.
self cloud service;information pushing;personal service;virtual PC;cloud storage
TP393
A
1674-8425(2014)07-0110-06
10.3969/j.issn.1674-8425(z).2014.07.022
2013-10-16
北京市教委项目(PXM2014_014232_000017)
刘颖(1981—),女,硕士研究生,讲师,主要从事计算机网络应用和云计算研究。
刘颖,邵雨舟,贾岚,等.高校云服务平台中自助云服务系统的实现[J].重庆理工大学学报:自然科学版,2014(7):110-115.
format:LIU Ying,SHAO Yu-zhou,JIA Lan,et al.Implementation of Self Cloud Service Sub-system in Cloud Service Platform of Campus[J].Journal of Chongqing University of Technology:Natural Science,2014(7):110-115.