基于云计算的实验资源管理系统实现

2014-09-25 19:22卫建安廖宏建利锦川
中国教育信息化·高教职教 2014年7期
关键词:云计算管理系统

卫建安+廖宏建+利锦川

摘 要:随着高校办学规模的扩大,配套的实验资源日益丰富,但在正常教学计划外实验室和大型仪器设备等实验资源大多处于闲置状态。为了提高其利用率,实现真正意义上的资源共享,需要研发一套应用于高校的实验资源管理系统。系统是基于AOM、Spring、Hibernate的轻量级Web应用,通过监控物理服务器、虚拟机和Web应用的相关指标,利用云计算的弹性来自动应对变化的访问量,涵盖实验资源管理、实验资源预约、分析统计等模块。实际运行证明系统的使用大幅提高了实验资源的利用率。

关键词:云计算;实验资源;管理系统

中图分类号:TP315 文献标志码:B 文章编号:1673-8454(2014)13-0078-04

一、引言

近年来,我国高等教育的规模不断扩大,社会对高素质创新型人才的要求不仅包括扎实的文化基础,更看重各方面的能力,尤其是实践能力及创新能力。实践能力和创新能力的培养不仅对现有的实践教学体系提出了新的要求,也对高校实验资源的建设和管理提出了新要求。然而由于人员、经费等各方面原因,导致实验室还沿用“封闭式”的传统模式,开放程度不高,实验室资源共享处于初级阶段,实验仪器设备利用率低下。[1]鉴于此,本文提出使用云计算技术来实现应用于高校的实验资源管理系统,借助云计算的弹性确保任意时段系统的快速访问。它的出现可以大幅提高实验室以及大型仪器设备的利用率,使学生得到更多学习实践的机会,同时也使实验资源面向社会开放成为可能,在一定程度为学校创收,有利于实验资源的升级维护。

二、云计算简介

云计算(Cloud Computing)是并行处理、分布式处理和网格计算的发展,是一种新兴的共享基础架构的方法。[2]云计算的本质是在计算机网络的基础上利用虚拟化技术和面向服务架构(Service-Oriented Architecture,SOA),整合分布在网络上的大量服务器集群处理能力,为用户提供安全、可靠、便捷的各种应用服务,用户可以在任何时间、任何地点,用任何可以连接到网络的终端设备来访问这些服务。[3]

根据NIST的定义,云计算有IaaS、PaaS和SaaS三种服务模式。[4]在国外,全球最大云计算服务提供商Amazon的EC2弹性计算云是IaaS的应用典范;相比起来Google的Google App Engine则是PaaS的代表,用户不再需要维护服务器,只需上传应用程序便可立即对外提供稳定的服务;在SaaS上,Google同时有Gmail、Docs、Earth等核心产品。相对而言,国内云计算的服务提供商主要立足于国内市场。在IaaS上,国内主要有阿里云、盛大云等公有云平台;与Google相似,新浪也推出了PaaS上的产品Sina App Engine;在SaaS上,以存储服务为例,华为网盘、百度云网盘等在功能上可媲美国外主流的Dropbox。

近年来国内高校纷纷进行数字化校园建设,得益于云计算的快速发展,数字化校园建设可以依托它来降低建设成本,简化管理,提高服务质量。在广州大学的数字化校园二期建设中,实现了IaaS的云平台搭建,并在此基础上实现了云计算的业务应用。平台架构如图1所示。[5]

广州大学私有云的底层基于红帽企业虚拟化(RHEV)实现,40块刀片服务器的计算资源融合成计算池,30TB光纤、IP存储的存储资源融合成存储池,交换机、网卡、HBA卡等网络资源融合成网络池。通过云管理平台(RHEV-M)统一对用户、任务、资源进行管理。目前,私有云上的应用达到140个,包括数字化校园的应用、各学院部门的历史遗留应用以及某些科学运算的应用。

三、系统的设计与实现

1.系统功能设计

实验资源管理系统包括超级管理员、设备处管理员、实验室主任、实验分室管理员、大型仪器设备管理员和普通用户6种角色。其中超级管理员拥有最高的权限;设备处管理员管理所有实验资源,拥有预约终审权,可以设定实验室主任;实验室主任管理本学院的实验资源,拥有预约复审权,可以设定实验分室和大型仪器设备管理员;实验分室和大型仪器设备管理员管理自己负责的分室和设备,设定其开放节次,拥有预约初审权,并登记使用情况;普通用户可以查看实验分室和大型仪器设备的开放时间并按需要进行预约,查询预约的审核进度,撤销还没有初审的预约。系统的功能结构如图2所示。

实验资源管理是系统的核心模块,包括实验室管理、实验分室管理和大型仪器设备管理三部分,实验分室和大型仪器设备均隶属于实验室。

在实验室管理中,可以看到实验室列表,点击详细信息会弹出新窗口显示更详细的描述信息。实验室列表显示内容会依据不同角色而不同,超级管理员和设备处管理员可以看到全校所有学院的实验室,而实验室主任只能看到本学院的实验室。在列表上方可以根据所属院系、实验室编号和实验室名称进行搜索,可以进行实验室的添加、修改和删除。

在实验分室管理中,可以看到实验分室列表,在详细信息页面中,可以看到分室的描述信息以及其开放时间。开放时间以二维表的形式列出每一天的开放节次,日期后的数字为该天开放总节数,下方为具体的节次,可以预约的节次会以红色加粗显示(只要开放的节次所在日期在当前日期之后,且未被其他人预约并审核通过,都会显示红色加粗),形式如表1所示。

实验分室列表同样会依据不同角色而不同,在列表上方可以根据所属院系、所属实验室,实验分室编号和实验分室名称进行搜索,可以进行实验分室的添加、修改和删除。选择实验分室列表中的某一实验分室后,实验室主任可以设定该分室的分管管理员。实验分室管理员可以为分室设置开放时间,设置分为批量设置和单独设置:在选择起止周次、日次和节次后,可以统一开放或暂停有规律的时间;选择某一天会弹出当天的开放节次信息,可以进行单独设置。大型仪器设备管理与实验分室管理类似,由于大型仪器设备不存在多人共管的情况,所以实验室主任在设定设备管理员时只能单选。endprint

2.系统架构实现

实验资源管理系统基于ASH(AOM+Spring+Hibernate)实现,表现层采用AOM框架,用来维护XHTML页面,作必要的数据校验工作,并调用后台业务逻辑。AOM(Apusic OperaMasks)是JSF1.2规范的实现与改进,是一套开源的框架。它继承了J2EE的开放性与稳定性,使得我们可以用类似C/S下的开发方式开发B/S架构的应用。[6]系统组件间的连接,如业务服务组件与DAO组件间的连接和UI组件与业务服务组件间的连接统一由Spring框架来完成。数据访问层采用Hibernate框架,提供对象持久化服务。当需要进行数据库CRUD操作时就调用Hibernate的API方法或定义HQL、CRITERIA语句完成相应的数据库操作。ASH技术充分利用这些框架各自的功能和优点使系统各层能够更好、更有效率地完成基础性操作。系统工作流程如图3所示。

(1)当请求通过XHTML页面提交时,AOM框架的控制器FacesServlet接受该请求,将请求转发给相应的ManagedBean,该Bean会进入JSF的6阶段请求处理生命周期。在通过前4个阶段后,进入调用应用逻辑阶段,如果请求涉及业务操作,ManagedBean会调用业务服务类,把要进行业务操作的数据传递给它。调用业务服务类时需要使用Spring的配置文件,必须事先在Spring框架中完成业务服务接口类及业务服务实现类的配置。

(2)业务逻辑组件(包括业务服务接口类和业务服务实现类)管理具体的业务操作和业务对象。当它接到来自ManagedBean的调用请求时,按照既定的业务流程执行业务逻辑操作。如果这个业务请求涉及数据库CRUD操作,将调用数据访问组件(DAO接口类及DAO实现类)完成数据库操作。调用数据访问组件也要使用Spring的配置文件,需要事先在Spring框架中完成DAO接口类和它的实现类的配置。

(3)数据访问组件(包括DAO接口类及DAO实现类)响应来自业务逻辑组件的请求,完成数据库相关的所有操作。在DAO实现类中包含了对Hibernate所提供的API(HibernateDaoSupport类相关方法)的调用。由于使用了Annotation功能,在实体类中通过注解方式将属性与数据库表的字段进行映射,故不再需要Hibernate映射文件。

(4)当业务服务实现类完成业务操作流程后将结果返还给调用它的ManagedBean类,ManagedBean根据不同的返回值(如null值为本页面,非null值为face-config.xml中对应的页面)跳转到相应的XHTML页面。

3.基于云计算的系统部署

由于实验资源管理系统会在特定时间段开放实验资源的预约,类似于教务系统的集中选课,访问量非常大,而非预约时段的访问量相对较小,所以将系统的Web服务器部署在私有云上。部署方案如图4所示。

校内和校外用户对系统的访问请求会先到达F5负载均衡器,由它以最小连接数优先的策略进行分发。请求随即被送往位于私有云上的Web服务器,Web服务器处理请求,若请求有持久化需要则会向后端的Oracle RAC(Real Application Clusters)发出SQL命令。Web服务器最后将处理结果返回最终用户。

为了自动应对变化的访问量,需要部署监控调度服务器。它连接私有云,实现对物理服务器、虚拟机和Web应用的监控,根据监控数据动态调配资源,确保应用的正常运行。

(1)对物理服务器的监控通过Nagios网络监视工具实现,监控调度服务器上安装Nagios和JMX服务,主监控程序通过Nagios来采集物理服务器的CPU、内存、磁盘I/O和网络使用率。

(2)对虚拟机的监控通过私有云自带的RHEV PowerShell API实现,主监控程序通过调用该API来采集虚拟机的CPU、内存、磁盘I/O和网络使用率。

(3)对Web应用的监控通过MyARM实现。MyARM是应用响应测量标准ARM Standard(Application Response Measurement Standard)的实现,主监控程序通过它监测应用响应时间是否在正常的响应延时范围之内,以此来判断应用是否处于良好的运行状态。[7]

部署好Web应用的虚拟机会先克隆为模板,在访问量小的非预约时段,主监控程序开启一台双核1GB内存的虚拟机支撑系统。当预约时段来临,由于访问量剧增,MyARM返回的应用响应时间持续变大,加上虚拟机的CPU、内存、网络等使用率达到上限,主监控程序会在私有云中寻找Nagios监控数据较健康的物理服务器,并在其上启动由模板转换后的虚拟机。主监控程序根据应用响应时间判断时否需要继续增加虚拟机,当应用响应时间处于正常范围时,虚拟机的数量也保持稳定。当预约时段结束后,虽然应用响应时间还处于正常范围,但虚拟机的CPU、内存、网络等使用率大幅下降,所以主监控程序会关闭之前增加的虚拟机,空出云中的资源让其他有需要的系统使用。

4.关键问题分析

Web层集群技术包括Web负载均衡和HTTPSession Failover,对应的关键技术是Session粘性和Session复制。[8]Session粘性指当特定用户发出第一个请求后,负载均衡器把该用户动态分配到某个节点上并记录该节点的Java虚拟机(JVM)路由,该用户的后续请求都会被绑定到这个JVM路由节点上,只与该Web服务器发生交互。而Web服务器如果失效,它所维护的用户会话状态就会丢失,因此需要HTTPSession Failover,即需要实现Session复制。但Session复制无论是全局还是配对复制均会使集群结点间的通信变频繁,特别是当结点较多时会严重影响集群的性能。而在基于云计算的部署方案下,Web服务器为虚拟机,主监控程序调用RHEV PowerShell API实时记录各虚拟机的内存状态。当虚拟机或虚拟机所在的物理服务器失效时主监控程序会在健康的物理服务器上恢复该虚拟机至失效前的状态,所以用户会话状态不会丢失,因此不需要Session复制,集群性能不会受结点增多而下降。所以本系统只需要通过F5负载均衡器的Persistence Profile来实现Session粘性便可构建稳定具有弹性的Web服务器集群。endprint

四、性能评价

在同样配置的情况下,采用传统的单机部署和采用云计算的动态部署后实验资源预约页面的响应时间对比如图5所示。在单机部署方案下,并发连接数一旦超过约150后响应时间就持续变长,特别是当并发连接数到达约300后,系统的速度让人不能接受,在并发连接数到达约350后系统甚至没有响应。而在云计算的动态部署方案下,虽然并发连接数持续变大,但由于主监控程序动态调整Web服务器的数量,所以系统响应时间始终能维持在正常的范围内,可见基于云计算的部署方案确实能满足不同并发量的访问需求。

五、结束语

基于云计算的实验资源管理系统借助云计算的弹性确保任意时段系统的快速访问,大大提高了实验资源的利用率,对希望实现真正意义上资源共享的高校有一定的借鉴作用。下一步的工作是扩展系统的功能,例如与实验室的门禁系统相结合,实现预约审核通过后实验资源的自动开放,为广大师生提供更优质的服务。

参考文献:

[1]肖红霞,陈美莲.改革“传统”实验模式 开放与共享实验室资源的研究[J].实验室研究与探索,2012(8):401-404.

[2]M. Brian Blake. Service-oriented computing and cloud computing[J]. Challenges and Opportunities,2010(11):14.

[3]David S Linthicum. Cloud computing and SOA convergence in your enterprise:A step-by-step guide[M]. Addison-Wesley Professional,2009.

[4]周洪波.云计算:技术、应用、标准和商业模式[M].北京:电子工业出版社,2011.

[5]廖宏建,杨玉宝.基于云计算的动漫渲染实验平台研究与实现[J].实验室研究与探索,2012(7):67-71.

[6]金蝶中间件.Web开发新体验[EB/OL]. http://www.operamasks.org/download/document/operamasks.pdf. 2011.

[7]MyARM GmbH.MyARM Community Edition Users Guide[EB/OL]. http://doc.myarm.com/current/community/MyARM-UsersGuide.pdf. 2013-1-29.

[8]吴少刚,陈晓玲.J2EE应用服务器集群性能研究[J].计算机工程与设计,2007(18):4410-4416.

(编辑:杨馥红)endprint

四、性能评价

在同样配置的情况下,采用传统的单机部署和采用云计算的动态部署后实验资源预约页面的响应时间对比如图5所示。在单机部署方案下,并发连接数一旦超过约150后响应时间就持续变长,特别是当并发连接数到达约300后,系统的速度让人不能接受,在并发连接数到达约350后系统甚至没有响应。而在云计算的动态部署方案下,虽然并发连接数持续变大,但由于主监控程序动态调整Web服务器的数量,所以系统响应时间始终能维持在正常的范围内,可见基于云计算的部署方案确实能满足不同并发量的访问需求。

五、结束语

基于云计算的实验资源管理系统借助云计算的弹性确保任意时段系统的快速访问,大大提高了实验资源的利用率,对希望实现真正意义上资源共享的高校有一定的借鉴作用。下一步的工作是扩展系统的功能,例如与实验室的门禁系统相结合,实现预约审核通过后实验资源的自动开放,为广大师生提供更优质的服务。

参考文献:

[1]肖红霞,陈美莲.改革“传统”实验模式 开放与共享实验室资源的研究[J].实验室研究与探索,2012(8):401-404.

[2]M. Brian Blake. Service-oriented computing and cloud computing[J]. Challenges and Opportunities,2010(11):14.

[3]David S Linthicum. Cloud computing and SOA convergence in your enterprise:A step-by-step guide[M]. Addison-Wesley Professional,2009.

[4]周洪波.云计算:技术、应用、标准和商业模式[M].北京:电子工业出版社,2011.

[5]廖宏建,杨玉宝.基于云计算的动漫渲染实验平台研究与实现[J].实验室研究与探索,2012(7):67-71.

[6]金蝶中间件.Web开发新体验[EB/OL]. http://www.operamasks.org/download/document/operamasks.pdf. 2011.

[7]MyARM GmbH.MyARM Community Edition Users Guide[EB/OL]. http://doc.myarm.com/current/community/MyARM-UsersGuide.pdf. 2013-1-29.

[8]吴少刚,陈晓玲.J2EE应用服务器集群性能研究[J].计算机工程与设计,2007(18):4410-4416.

(编辑:杨馥红)endprint

四、性能评价

在同样配置的情况下,采用传统的单机部署和采用云计算的动态部署后实验资源预约页面的响应时间对比如图5所示。在单机部署方案下,并发连接数一旦超过约150后响应时间就持续变长,特别是当并发连接数到达约300后,系统的速度让人不能接受,在并发连接数到达约350后系统甚至没有响应。而在云计算的动态部署方案下,虽然并发连接数持续变大,但由于主监控程序动态调整Web服务器的数量,所以系统响应时间始终能维持在正常的范围内,可见基于云计算的部署方案确实能满足不同并发量的访问需求。

五、结束语

基于云计算的实验资源管理系统借助云计算的弹性确保任意时段系统的快速访问,大大提高了实验资源的利用率,对希望实现真正意义上资源共享的高校有一定的借鉴作用。下一步的工作是扩展系统的功能,例如与实验室的门禁系统相结合,实现预约审核通过后实验资源的自动开放,为广大师生提供更优质的服务。

参考文献:

[1]肖红霞,陈美莲.改革“传统”实验模式 开放与共享实验室资源的研究[J].实验室研究与探索,2012(8):401-404.

[2]M. Brian Blake. Service-oriented computing and cloud computing[J]. Challenges and Opportunities,2010(11):14.

[3]David S Linthicum. Cloud computing and SOA convergence in your enterprise:A step-by-step guide[M]. Addison-Wesley Professional,2009.

[4]周洪波.云计算:技术、应用、标准和商业模式[M].北京:电子工业出版社,2011.

[5]廖宏建,杨玉宝.基于云计算的动漫渲染实验平台研究与实现[J].实验室研究与探索,2012(7):67-71.

[6]金蝶中间件.Web开发新体验[EB/OL]. http://www.operamasks.org/download/document/operamasks.pdf. 2011.

[7]MyARM GmbH.MyARM Community Edition Users Guide[EB/OL]. http://doc.myarm.com/current/community/MyARM-UsersGuide.pdf. 2013-1-29.

[8]吴少刚,陈晓玲.J2EE应用服务器集群性能研究[J].计算机工程与设计,2007(18):4410-4416.

(编辑:杨馥红)endprint

猜你喜欢
云计算管理系统
基于LED联动显示的违停管理系统
停车场寻车管理系统
船舶压载水管理系统
海盾压载水管理系统
实验云:理论教学与实验教学深度融合的助推器
基于RFID的仓储管理系统实现