云实验室在大学计算机基础实验教学中的应用
2016-03-03高洪皓单子鹏陈章进杨利明
高洪皓, 单子鹏, 陈章进, 杨利明, 高 珏
(上海大学 计算中心, 上海 200444)
云实验室在大学计算机基础实验教学中的应用
高洪皓, 单子鹏, 陈章进, 杨利明, 高 珏
(上海大学 计算中心, 上海 200444)
本文针对大学计算机基础实验教学存在的问题,分析建立虚拟实验室的迫切性,以云主机建设为依托构建虚拟实验室,在实验课程开放、课外创新项目训练和大学生计算机竞赛服务等方面为高校师生提供开放、互联的虚拟教学环境和实验操作平台,能有效地提高实验教学质量并增强学生的学习能动性。
云主机,虚拟实验室,计算机基础
0 引言
大学计算机基础教学的目的是信息素养的培养和计算机应用能力的提升[1]。面对云计算、MOOCs平台等新技术的冲击,大学计算机基础教学如何适应大类招生,实现多元化、创新型人才培养的要求,成为高等学校亟待研究和解决的问题[2]。
大学计算机基础实验教学是大学计算机基础教学的重要组成部分,能直接检验学生的计算机基础理论,增强学生操作计算机的能力。然而,许多高校由于教学计划的压缩导致计算机基础课程的实验课学时数大幅减少,使得大学生在计算机软件操作能力培养方面存在一定的不足。如果高校缺乏实验教学和操作练习环节,学生既无法巩固和提高计算机基础知识,也容易纸上谈兵,毕业后无法满足用人单位在计算机理论与实践的双方面要求。
高校计算机基础实验室的建设不仅涉及经费问题,而且涉及实验室机房管理人员配置及培训等技术和管理问题[3]。传统实验室建设通常以周期性更新计算机硬件为手段,需要投入大量人力和物力。但计算机实验室的软硬件往往跟不上计算能力和计算需求的变化。通常情况下,实验室硬件设备大多只能维持2-4年。在实验室日常管理和维护中,用于计算机基础实验的教学环境需要不断地更新和维护,必然会造成大量的、重复的劳动力浪费。尤其是实验室机房建设经费近年来在多数高校年度预算中大幅减少的背景下,周期性的、重复性的建设问题使得“云实验室”的建设需求变得非常迫切。其次,由于传统教学实验课程的时间和空间限制,教学实验课需要学生在指定的时间和机房进行。即使部分高校开设了实验室预约模式来协调计算机实验教学和理论教学时间的冲突,但是实际效果并不明显,主要问题是实验室在各个时间段上的上机人流量难以统一,实验室设备的利用率不易充分发挥。针对学生课外实验需求方面,如7×24小时的全天候实验需求,更是无能为力。
在“互联网+”推动下,越来越多的高校开展了“互联网+虚拟实验室”的建设计划,构建适用于大学计算机基础实验教学的虚拟实验室,培养学生计算机基本应用的能力、、综合应用知识的能力和创新创业实践的能力。我校计算中心从2012年开始一直在探索虚拟实验室的建设,逐渐开发了一套以云主机建设和研发作为平台基础的虚拟实验室管理平台,实现面向师生的审核管理,自动分配计算资源和云存储,自动配置操作系统和实验软件环境,以及自动回收计算资源等功能。在大学计算机基础教学中的实验教学环节,充分利用虚拟实验室的开放互联特点和全实验环境平台交互特点,打破传统实验教学的时间和空间限制,面向师生开放更多实验平台和教学资源。虚拟实验室减少对传统机房人力,物力以及高额经费的投入,缓解实验室建设与学生实验需求之间的矛盾。教师能自主配置实验软件用于实验教学环节,以“热插拔”的模块化管理进行统一维护实现计算机基础实验课资料、实验数据的共享与协同工作,确保实验教学环境的先进性。
本文将从云主机建设与管理运行模式、大学生计算机设计竞赛服务等方面介绍我校计算中心在虚拟实验室建设方面的探索和应用。
1 云主机建设与系统开发
1.1 云计算
云计算是以互联网为中心,提供安全、快速、便捷的数据存储和网络计算服务,云计算的核心技术是分布式的计算方法,特别强调虚拟化技术的应用。云计算按照服务类型分为:将基础设施作为服务IaaS (Infrastructure as a Service),将平台作为服务PaaS (Platform as a Service)和将软件作为服务SaaS (Software as a Service)。我校计算中心的云主机建设通过自主研发不同的云主机应用平台将以上三者有机结合,满足计算机教学的不同需求,使得用户可以通过互联网来获取数据资源的存储和计算服务。
1.2 虚拟化技术
虚拟化(Virtualization)技术作为云计算系统的核心组成部分,是将各种计算及存储资源充分整合和高效利用的关键技术。服务器虚拟化是基础设施作为服务的基础,需把一个物理服务器虚拟成若干个服务器使用。在有限的硬件服务器环境中部署更多的虚拟服务器以达到减少硬件投资成本、提高资源利用率、降低能耗的目标,也迎合当前低碳减排的社会理念。
首先将服务器分类集群,采用Xen或KVM技术进行虚拟化,并形成计算节点的资源池。其次,确定池主,以便通过API接口统一任务调度,实现计算节点上的负载均衡。最后,为了实现统一存储和HA高可用性,将存储资源通过10 Gb高速光通道网络采用iSCSI方式接入计算节点。
其中,池化计算节点方案的选择不仅有利于异构体系管理和业务区分,而且方便业务变化后的资源调整,使得有限的计算资源可以合理调配和有效利用。基于此的数据中心应用层的管理可以满足更高层次上的缩放性需求,从而更便捷地解决教学过程出现问题的识别和操作。在完成虚拟化的基础上,借助专业存储数据的IOPS(Input/Output Operations Per Second)能力,对用户层提供IaaS类型的云主机或云桌面等云计算服务。
1.3 系统架构
我校计算中心基于云主机的虚拟实验室的设计思想是以云主机资源、教师和学生为主要管理对象,在互联网上按指定流程自动向特定服务对象提供可控计算资源的云管理系统,为随之而产生的管理提供方便。系统架构如图1所示,包括虚拟化层、云管理层、云计算应用层。从横向技术研究方面,分别实现了基于Xen技术虚拟化和基于KVM技术虚拟化的云主机建设。
虚拟化层主要采用开源技术Xen和KVM做底层计算资源虚拟化,搭配大容量高速存储做数据中心,提供云端资源池。
云管理层主要实现用户需求与虚拟计算的自动化管理,包括采用XenAPI实现自动化操作虚拟化服务器XenServer进行计算资源和存储资源的分配和回收等操作,采用OpenStcak和OsAPI操作虚拟化服务器KVM进行计算资源和存储资源的分配和回收等操作。
云计算应用层主要是为满足不同的教学和科研需求,采用LAMP与MVC技术,需要研发面向用户的应用系统。前台UI界面使用HTML5、JS等编程实现,增强交互和适应性;后台服务采用JSP、PHP等编程实现。
图1 系统架构示意图
2 虚拟实验室应用案例
如表1所示,基于云主机的虚拟实验室已在校内上线使用,已经取得较好的应用效果。从2014年开始每年上万人次使用了虚拟实验室,主要开展了两类服务:一类是服务实验课程和学生课外创新项目,另一类是服务于2015年全国大学生计算机设计大赛的软件决赛点的赛务工作。从实际使用情况来看,云主机在功能和性能上满足多并发和稳定工作的要求。
表1 基于云主机的虚拟实验室网址
2.1 实验课程应用情况
利用云主机创建虚拟实验室所提供的实验课程有助于学生充分利用碎片化时间来完成计算机基础操作实验,提高实验资源的有效利用率和调动学生的学习能动性。基于云主机的灵活性,提出了“大班上课,小班实验”模式,尝试提供小班实验课模式。
小班实验要求教师根据教学情况设置实验室班级,同时配置操作系统模版和相关实验软件。学生登录系统后,选择实验室班级进行课程实验。当学生选定某个教师实验室后,管理平台将自动分配操作系统模版并在远程云端自动部署和安装。当学生提交实验作业后,在管理平台上点击注销实验室。此时,系统检测到该学生退出实验室,将自动注销云主机资料,包括注销云主机系统、撤销分配的计算资源和存储资源。云主机是云端运行的,操作系统和相关软件由管理平台自动安装,因此不仅能减轻学生安装软件的麻烦,而且实验作业统一放在指定盘符下,当点击退出班级时,云主机管理系统将自动收集学生作业。这一自动化分配和回收机制将有利于现有计算机资源的管理和利用。
在云主机上给教师分配了相关的账户和权限,实验课程不再需要固定在一个时间段进行。目前,可开设的计算机基础实验课程包括“计算机技术导论”、“程序设计(C语言)”、“计算机网络基础”、“计算机多媒体基础”、“数据库技术基础(Access)”、“高级办公自动化与宏应用”、“计算机硬件技术基础”等7大类。同时考虑到下一步推广和升级,正在研发实验课选课系统与虚拟实验室的对接功能。该功能将实现实验课选课数据自动下发到管理平台,由管理平台创建虚拟实验室的云主机并返回相关信息到学生个人中心页面。
2.2 学生课外创新项目情况
大学生创新创业训练计划项目旨在增强高等学校学生的创新能力和创业能力[4,5]。在学生课外创新项目中,有关云主机应用和开放方面,涉及数据库、Web服务器和版本控制等服务。
对于数据库类的软件开发,在虚拟实验室中,云主机系统模版添加了三大类基本数据库,包括SQL Server、MySQL和Access,预先安装这些数据库软件也免去了学生安装和升级的麻烦。云主机上的数据库允许远程访问和操作,便于数据库开发类软件进行统一数据管理和维护。
对于Web应用程序开发类,在虚拟实验室中,云主机开放了80和8080端口,允许学生部署IIS服务器和Tomcat服务器来运行Web程序。团队能部署真实系统到Web服务器上查看效果,也能允许其他队员进行测试。
对于团队合作开发,版本控制是至关重要的。在虚拟实验室中,云主机搭建SVN版本控制软件并设置相关账号,管理多人开发模式的代码。
虚拟实验室在我校的学生课外创新项目中也得到了应用,尤其是组织学生参加本校、上海市和国家等各级别的大学生计算机竞赛,取得了丰硕成果:在中国大学生计算机设计大赛中,2013年获得一等奖1项、二等奖2项,2014年获得二等奖1项,2015年获得二等奖4项、三等奖2项;在上海市大学生计算机设计大赛中,2013年获得一等奖2项、二等奖2项、二等奖3项,2014年获得二等奖2项,2015年获得一等奖1项、二等奖2项和三等奖9项。
2.3 大学生计算机设计竞赛服务
我校计算中心承办了2015年第8届中国大学生计算机设计大赛软件应用与开发类总决赛。总决赛作品分为数据库应用、网站设计和虚拟实验平台三个类别,有来自全国189所高校的328支队伍,共计1018名师生参赛。为了更好地服务大学生计算机竞赛,虚拟实验室开放了云主机申请,允许参赛队部署参赛作品以方便展示,也方便评审专家评判作品。根据统计情况,有100多支参赛队伍使用了云主机服务发布他们的作品。针对数据库应用方向,参赛队伍使用自带SQL Server和MySQL服务的云主机居多;针对网站设计方向,参赛队伍使用自带Web应用服务器的云主机居多;针对虚拟实验平台方向,使用相对较少,但使用自带Flash或渲染软件的云主机居多。
3 结语
基于云主机构建的虚拟实验室为计算机基础实验课程提供了全新的教学环境。在大学计算机基础教学中,虚拟实验室不受时间和地点的限制,学生可以在寝室、实验室、图书馆等场所,通过笔记本、Pad、手机等移动设备访问虚拟实验室完成课程实验作业。我校计算中心在建设虚拟实验室方面已初步取得一些经验,包括开设课外实验课程,服务大学生计算机设计竞赛等方面。今后将进一步研究实验云主机模式下的数据共享和协同工作问题,实现一套数据两地公用的功能和基于预约模式的云主机自动分发功能。
[1] 卢湘鸿. 大学计算机体系研讨: 43所院校厦门会议共识[J]. 北京:计算机教育, 2014(13): 27-31
[2] 高洪皓, 朱永华, 陈章进. 基于MOOCs平台的计算机基础实验教学课程建设[J]. 北京:工业和信息化教育, 2014,6: 90-94.
[3] 王强, 何才辉, 陈晓辉,高校计算机中心机房建设中应考虑的两个问题[J]. 北京:实验技术与管理,2006,2: 109-111.
[4] 杨夏妮,云计算在大学生创新创业训练计划中的应用研究[J]. 北京:计算机教育,2015,9:31-33.
[5] 周凯, 大学生创新创业训练计划将启动[N]. 北京:中国青年报, 2011-10-23(2).
Applying Research of Cloud Laboratory for Computer Basic Courses Teaching
GAO Hong-hao, SHAN Zi-peng, CHEN Zhang-jin, YANG Li-ming, GAO Jue
(ComputingCenter,ShanghaiUniversity,Shanghai200444,China)
For the problems of computer basic courses teaching, this paper analyzes demands to build virtual laboratory, and proposes a cloud based host computer to experiment teaching, which has been used in courses experiment, innovation project training and computer contest services. This platform provides an open and connected operation platform in virtual teaching environments. It effectively improves the quality of experiments teaching and enhances student learning initiative.
cloud computer, virtual laboratory, computer basic
2016-02-17;
2016-04-25 基金项目:2016年全国高等院校计算机基础教学改革课题(编号2016066);教育部2014年与百度公司校企合作专业综合改革项目(编号:2014-BD341); 2015年赛尔网络下一代互联网技术创新项目(项目编号:NGII20150609);上海高校青年教师培养资助计划(编号:ZZSD13008)
高洪皓(1985-),男,博士,讲师,主要从事模型检验、Web 应用、服务计算等教学和科研,E-mail:gaohonghao@shu.edu.cn
TP317
A
1008-0686(2016)05-0130-04