APP下载

基于云平台虚拟网络实验室功能实现设计

2018-12-20林杰

电子设计工程 2018年24期
关键词:资源管理实验室模块

林杰

(华南理工大学公共管理学院,广东广州510640)

近年来,我国的教育资源发展迅速,日常教学对实验室的发展提出了一定的要求。随着科学技术的不断进步,虚拟实验室因其良好的便捷性和快速性而得到了广泛的应用[1-2]。国内的许多高校根据自身的教学需求,都建立了对应的虚拟实验室,但是同时也带来了诸多问题,如虚拟实验室在建设的过程中需购置一定数量的IT设备以及配置IT设备维修人员,导致较大的建设成本以及后期维修成本,同时这些设备利用率都较低。针对该问题,本文提出了基于云平台软件Cloudstack的虚拟实验室解决方法。根据传统学校实验室存在的问题,分析了云平台虚拟实验室的需求,提出了虚拟实验室云服务平台的基本架构和功能,根据Cloudstack的Open API基本特征完成了虚拟实验室的设计,并完成了系统测试。

1 云平台虚拟实验室需求分析

实验室是高校教学系统中必不可少的组成部分,对学生技能提升、素质提高具有重大意义。但是从目前的高校实验室资源现状来看,还存在很多的问题和不足[3-4],主要表现在:1)较高的建设维护费用,实验室计算机使用强度较大,很难落实统一的使用规范,导致较高的更换频率,因此计算技术设备以及软件反复的更新替代造成了较大的网络实验室建设费用;2)繁琐的上机准备环境,实验室管理人员首先得将实验教师提交的实验准备文档上传至所有的计算机中,一般耗时较长且必须在非上机的时间段内进行操作,同时不能在上机时进行实验环境的调整,因此带来了较大的不便;3)桌面终端维护困难,网络实验室的大量终端一起运行时会导致操作效率很低,同时不同电脑的系统安装、软件删除添加都有较大的工作量且耗时较大;4)终端安全性低,学校网络实验室的电脑有较多的终端,实验资料频繁的传输极易感染病毒,一些电脑病毒查杀软件更新也不够及时,从而具有较大的安全隐患;5)单一的应用场景,学校网络实验室的功能往往比较单一,如电子阅览书、外语教学网络实验室、计算机教学网络实验室等,该类网络实验室占用资源较大,不具备多功能切换,致使应用场景较为单一。

云计算技术的快速发展,为高校实验室的建设提供了新的解决方案。云计算凭借互联网作为支撑中心,可提供安全和便捷的数据存储以及计算服务功能,具有大规模多用户、虚拟化和高可靠性等功能特点[5-6],因此可在云端搭建不同专业、功能的虚拟网络实验室环境。云平台可根据用户的选择,通过虚拟机来实现资源动态分配,从而可以更好的利用教学实验室资源。将云计算引入来构建学校虚拟网络实验室一方面能够降低实验室的建设成本,另一方面可灵活方便的动态分配实验资源,提高了实验室的利用效率。因此,该方案具有较好的应用需求价值。

2 虚拟网络实验室云服务平台

云平台虚拟网络实验室是一种建立在云计算服务平台的实验教学平台,其示意图如图1所示。云服务平台使资源共享传递更加快速便利,可实现不同实验资源之间的真正共享。该实验平台存在于一个虚拟的网络环境当中,可提供各种实验所需工具,云服务虚拟技术存储大量的实验资源信息,为不同的网络实验需求服务,同时云平台能够提供多种网络资源,满足实验教学需求。

云服务采用先进的虚拟化技术[7-8],信息搜取快捷方便,储存较大的信息量,能够提供多种不同的网络实验设施,管理方式较为合理,同时能够适应不同的实验需求。虚拟网络实验室的基本功能框图如图2所示,主要体现在以下几个方面:1)网络实验室设施管理功能,通过云计算和虚拟化平台来提供多种服务功能,空间广阔能够涵盖多种不同信息资源,存储功能强大,同时还可以采用云计算和虚拟化技术来建立基础设施云,进一步提高云平台功能;2)虚拟仪器管理功能,云平台能够在一个虚拟的环境中综合有序的管理各类实验室虚拟仪器,实现真正的网络虚拟资源共享,所有管理和共享是以Web服务为基础;3)实验设计和配置功能,该功能能够改变网络虚拟资源使用的不便,虚拟教学实验中的数据变动灵活,设备使用范围更改灵活,同时可模拟实验环境。

图1 虚拟网络实验室云平台示意图

图2 虚拟网络实验室平台功能框图

虽然网络实验室是虚拟化平台,但可以对实验的每个步骤进行配置,实验室数据信息具有一定的可信度和真实性,加上数据处理灵活可靠,且实验设计和组建配置自由,因此云服务平台信息资源丰富。

3 云平台虚拟网络实验室的设计实现

3.1 设计基本思想

云平台虚拟网络实验室是基于CloudStack的开放性软件接口Open API技术(又称开放平台)[9-10],API首先将所有的信息进行整合而得到大批的API,然后传播出去给用户所使用。

在API的基础上,采用以下构建思想:1)类分层设计,采用类分层设计思想建立系统模型,能够降低相互之间的紧密程度,本文分别设计对象属性以及不同的操作类,一共分为控制类层、页面层、模型属性层以及模型操作层等4个水平层次,其中控制层和页面层利用JSF来绑定、转换或者显示数据,主要的执行功能是不同用户之间的交互、数据获取显示等,模型属性层表示的是对象的基本属性以及对应的基本操作,模型操作层对所有模拟对象进行操作;2)多平台管理设计,本文采用WEB UI和Open API使系统完成交互,只需要用户名以及密码即可完成云平台交互,此形式的云计算可管理所有云平台,实现云平台资源共享和管理;3)采用XML或JSON数据格式对模型属性类进行设计,能够有效转换为和API交互的数据格式或者模型属性;4)采用JSEE的系统设计架构,JSEE框架可展示出不同层次的设计和环境转移较为方便,因此可提高效率和增强规范性。

3.2 系统设计与实现

云计算对于不同的用户设置不同的权限,管理人员能够对全部的API进行操作。系统Mobile WEB UI和PC WEB的支持来源于Primefaces mobile开源库,系统架构图如图3所示。

图3 系统架构图

主要的设计功能板块包括API交互模块、物理资源管理模块、虚拟资源管理模块、平台资源管理模块以及业务服务管理模块等5个部分。

1)API交互模块

Cloudstack一共有3类API交互方法,第一类是WEB UI的访问,login接口调出的两类结果实现API的交互;第二类是由apikey和signature交互所完成;第三类是服务器端口所完成的交互,该类交互缺乏认证步骤极易造成危机,因此不宜采用。综合考虑本文的设计需求,采用第一类API交互方法,通过设计静态全方位类来管理多平台。系统的登录类图方式 主 要 有 LoginOp,LoginRequest,LoginResponse,LoginStatic,LoginResponseJson和 JsonUtil等 6种类型,其中JsonUtil类型是公用类型,通过Jackson工具来完成JavaObject和Json之间的交互。然后根据用户登录的时序图来设计交互板块,第一步使用用户需要在第一页申请登记需求,LoginRequest数据通过LoginView获取之后便调用函数getLogin(),函数getLogin()再通过函数obToJson()完成LoginRequest对象到字符的转变,最后通过HttpClient传送派生的字符。

2)物理资源管理模块

物理资源管理的基础设置有Zone,Pod,Cluster以及Host等,此基础设置对应的资源管理有ZoneOp,PodOp,ClusterOp 以 及 HostOp,其 中ZoneOp,PodOp,ClusterOp主要实现修改、删除等基本功能,HostOp则不仅完成基本功能,同时还能够添加二级存储、更新Host操作等。另外基础设置的添加时序为数据库中心、机房、机架和主机。

3)虚拟资源管理模块

虚拟资源管理模块主要有系统虚拟机、虚拟路由器以及网络资源等管理模块,资源管理的实质是管理云平台、实际物理主机以及用户虚拟机等3方面,资源监管类型有Capacity类、UserVm类、Host类及Capacitys类等,其中云平台通过Capacitys类获取总资源,而实际物理主机以及用户虚拟机则通过Host类及UserVm类获取资源。

4)平台资源管理模块

平台资源管理主要包括模板管理模块、事件管理模块、服务方案模块以及资源计量等模块等,其中模板管理模块最重要的是管理虚拟机和ISO模块,通过TemplateOp类来设置其基本属性;事件管理模块主要是记录、查询和删除系统登录和操控过程的整个事件,事件根据属性可以划分为系统事件和报警事件两大类;服务方案模块包含的内容是计算、网络和硬盘存储等,为用户资源分配提供依据;资源计量模块是通过人工手动的启动Cloudstack管理服务工具来实现。

5)业务服务管理模块

业务服务管理模块包括实例管理模块、项目管理模块和用户管理模块等,其中实例管理是管控用户虚拟机,系统主要通过InstancesGroup工具来管控所有实例群的创建、更改以及删除等,而通过VmSnapshot工具来设置虚拟机的快照,InstancesOP工具主要是支撑虚拟机内部的调整和维护等;项目管理模块能够使用户查找已有项目和添加待进行的项目;用户管理模块主要完成用户范围、用户账户以及用户管理等,该模块必须具备管理管理权限,用户管理类图中的AccoutOp和UserOp类支持基本功能的完成,Domain,Account及和User则是支持创建、修改、注册和查看等功能。

4 系统性能测试

在Cloudstack4.2云环境中搭建测试平台,云环境服务器为联想的PC,分别设置3台PC的用户名和密码,其中第一台PC的IP为192.168.1.8,主要作为Cloudstack的服务管理器,第二台PC和第三台PC的IP分别为192.168.1.6和192.168.1.4,主要用作计算资源的结点。

测试系统中分别让200个用户、300个用户、400个用户和500个用户访问云平台虚拟网络实验室,对访问的响应时间和每秒事物数量进行了测试,测试结果如图4和图5所示。从图4中可以看出,当并发用户数为200和300时,其平均响应时间都在允许的范围之内,而当并发用户数量超过400时,响应时间增加显著,表明承受的负载太高。同样的从图5可知,并发用户数在400之前的服务均可通过,系统响应正常,而当并发用户数达到500时,每秒事物数开始下降,表明因大负荷已导致系统阻塞,系统非正常运行,综合看来所设计的实验室系统能够满足现代高校实验室用户的使用需求。

5 结论

图4 云平台下不同用户响应时间

图5 云平台下不同用户每秒事物数

文中以云平台软件Cloudstack为基础,研究了云平台虚拟网络实验室功能实现技术,分析了现有教学实验室的弊端以及云平台虚拟实验室的需求,为此提出了虚拟实验室云服务平台的基本架构和功能,并根据云平台Cloudstack的Open API基本特征设计了虚拟网络实验室,最后搭建测试平台对系统性能进行了测试。所设计的云平台虚拟网络实验室能够解决传统教学实验室中资源浪费和维护成本高等问题,同时具备快速、可靠的运行特性,能够满足现代高校实验室用户的使用需求,是未来高校实验室建设的发展趋势。

猜你喜欢

资源管理实验室模块
28通道收发处理模块设计
“选修3—3”模块的复习备考
人事档案管理在人力资源管理中的作用
人力资源管理促进企业绩效提升
企业人力资源管理
电竞实验室
电竞实验室
电竞实验室
电竞实验室
GIS在森林资源管理中的应用