英语原文共 6 页,剩余内容已隐藏,支付完成后下载完整资料
基于Open Stack的虚拟实验平台
余胜,胡雷凡,肖磊,黄娟
中南大学信息科学与工程学院
中国长沙
摘要
作为计算机科学相关领域专业学生的最重要的组成部分,实验不仅有助于更好地理解理论知识,而且还增强了动手能力。然而,传统的实验室需要为场地和设备投入巨大的资金,特别是计算机网络的实验。为了解决这些问题,我们设计了一个基于Open Stack的虚拟实验平台,使用户能够选择虚拟实验资源,如PC,路由器和服务器,以及建设网络拓扑和访问这些设备。我们的平台呈现给教师和学生一个完美的功能性实验系统,让大家在保证实验实用性和简单性的前提下能够在实验室与宿舍做实验练习。
关键词:虚拟实验;Open Stack;网络;计算机网络。
- 绪论
实验对工科专业学生学习有着关键作用,尤其是计算机与电子专业本科生。通过实验不仅仅是更好地理解课程,同时也可以培养举一反三的思维[1]。在传统的实验模式下,所有的测试都是在时间和设备不足情况下在物理实验室完成,除此之外,实验的不完整性也为以后进一步实验带来了不利的影响。为了解决这个问题,计算机信息技术得到广泛应用。然而,计算机科学相关课程通常受限于物理硬件和维护成本,而且还受限于高度依赖模拟软件精度结果的虚拟仿真技术。
在本文中,我们设计了一个基于Open Stack的虚拟实验室系统,以解决现有虚拟实验平台存在的问题,比如这些平台的可靠性和可扩展性。用户申请所需的资源,这些资源将在稍后由系统分析。被允许后,分配某些资源的请求将被发送到云计算库,创建一个虚拟的实验环境。稍后,用户可以通过远程访问登录虚拟机(VM)来执行实验。实验结束后,这些虚拟资源会立即被回收,或者保存实验环境和进程。
本文结构如下:第2部分,我们简要讨论一些相关的作品; 第3部分详细介绍了该系统的结构体系和关键技术; 其次是第4部分的一些相关作品;最后,我们在第5部分给出总结和对未来的期望。
第二章 相关文献
在过去的几十年中一直在深入进行虚拟机技术的研究。 人们普遍认为由于环境[2]和经济问题[3],云资源利用是一个非常重要的话题:几篇文章以降低能耗,减少服务器运行数目。 在这一部分,我们将对相关的作品进行研究并给出相应的描述。
最近的作品包括 私有云计算平台[李小宁等人 2012]这使得虚拟资源以弹性分配,并保证数据的安全性; 自助服务虚拟实验室[肖飞等人 2013]为了满足个性化教学的需要; 基于Open Stack的IaaS系统[张吉林等人 2013]它实现了高质量教育服务; 基于安全的基于智能工作服务模型的Open Stack [JinMook Kim et.al. 2014],它是针对Open Stack环境中的SQL注入攻击而准备的;一个私人的基础设施即服务云[Stephen Bonner et.al.2013]以低成本提升学生的学习体验;使用Open Stack开发云计算平台的解决方案[RakeshKumar et.al. 2014]比较不同的云计算平台为服务提供商和企业提供最佳解决方案;一个基于云计算的远程教育实验室[Sasko Ristov et.al. 2014]动态,灵活,有弹性,可靠和现代化的实验室,可以为学生服务,同时作为“实验室即服务”原则行事的许多课程的远程学习工具;一个基于云的网络安全教育虚拟实验室[XU Leet.al. 2014]帮助学生理解计算机安全解决实际问题; CSCLab [Samuel Alves et.al. 2014]:一个非专家可以轻易使用的云技术系统,可以适应其他类似服务的平台一个可编程的虚拟网络[WU Yongjuan et.al.这是一种基于软件定义网络(SDN)的解决方案,它包含一个集中式服务器和分布式代理。它比单一的集中式和分布式解决方案更可行,灵活性和性能之间有更好的折衷[4-11]。
第三章 系统设计
A. 框架
该框架图示于图1中。
图1
用户从浏览器选择装置来构建实验,然后将其提交给服务器,以便用户能够得到操纵页面远程执行该实验。服务器将分析并接收来自用户的要求,包括从Open Stack调用API来构建,打开,关闭和终止虚拟机,以及一些虚拟机镜像操作。整个系统的基础设施是由多个向用户提供云计算基础设施服务的Open Stack云服务器构成。虚拟实验资源中包括PC,网络都是由该层支持。
以用户实验请求为例,远程用户的实验处理过程如下:
1) 用户通过Web登录系统根据需要选择PC,交换机和路由器等,然后通过接线操纵页面上的设备绘制实验的拓扑图;
2) 用户提交拓扑图。拓扑图的请求数据将被发送到Web服务器,收到请求之后,对不同的虚拟机的需求以及网段的结构进行分析;
3) 当达到设备规格和网络配置后,建立用户所需的网络实验环境,通过调用web服务器上的Open Stack提供的API web service,包括建立实验网段,建立虚拟机等等;
4) 当虚拟实验环境建立后,用户通过远程访问登录虚拟机,然后进行实验;
5) 用户根据流程进行实验得到结果,实验结束后,虚拟设备和网络将立即终止。
B. 主要功能模块
实验管理模块
该模块根据不同的用户类型提供相应的功能:
1) 对学生来说,这个模块主要提供的功能有:做实验,保存实验进程,加载实验进程和恢复实验进程,授予学生完成实验课程权限,保存实验环境有别于保存实验进程。前者只是保存了各种PC的规格和配置但不会在Open Stack中保存虚拟机与网络。在加载环境时这些信息将被发送到Open Stack后台重新建立一个环境。保存实验进程的话学生可以直接加载上次保存的实验进程继续进行实验。
2) 至于教师,这个模块主要提供的功能包括:申请实验课程和辅导学生等,如果要开始一个实验,教师首先要到系统中申请,申请允许后,学生可以登录系统并学习课程。在实验过程中,教师也可以通过远程访问来检查每个学生的操作和过程。
3) 对于管理员来说,这个模块主要提供的功能包括:从教师验证应用和维护系统。课程的正式使用前必须通过超级管理员的验证。课程的主要日常维护是添加和删除课程。
虚拟设备管理模块
虚拟设备在运行时需要进行维护和管理,包括检查虚拟机的运行状态,物理服务器的加载情况,处理错误等。该模块主要提供如下功能::
1) 管理虚拟设备:创建虚拟机,添加网络将虚拟机连接到实验局域网,显示来自物理节点的物理服务器和虚拟加载机的加载和运行状态。
2) 针对虚拟机的快速启动:响应尽快创建一个虚拟机的请求。
3) 维护虚拟设备:针对不同的错误制定相应的解决方案。
虚拟设备管理模块涉及到系统的高权限,因此它只能由超级管理员使用。
C. 关键技术
镜像模板管理
该系统为用户提供了如PC,服务器,路由器,开关等虚拟设备。实验软件占用较少的空间,因为系统文件占用相对较大比例的图像。
在分析实验的可扩展性之后,我们通过制作两个不同的镜像来分别介绍一种保存用户软件以及数据和系统文件的方案:系统镜像和用户镜像。系统镜像是只安装操作系统和一些常用软件的只读磁盘镜像文件,而用户镜像是可写磁盘镜像文件,用实验软件记录用户使用的数据和软件。系统镜像可以从互联网制作或下载,而用户镜像必须为特定的实验进行定制。
将大文件分成两个独立的镜像文件是合理的,包括PC或服务器的操作系统。在启动虚拟机时,会同时读取两个镜像文件,首先使用系统镜像启动虚拟机,然后将包含用户镜像的云端硬盘挂载到虚拟机上。一台虚拟机可以安装一些云驱动器,为用户提供完整的虚拟机操作统。通过这种方式实现了用户软件和系统软件的分离,减少了传输虚拟机镜像文件的时间以及存储镜像文件的时间。这种方案增强了镜像文件的通用性,每个实验都不需要做一个减少存储和版本控制压力的镜像文件。
虚拟机快速启动方案
提高创建虚拟机的响应速度的瓶颈是镜像文件占用太多的空间,创建虚拟机实例的相应镜像文件,然后从镜像节点转移到计算节点将耗费大量的时间
对于虚拟机镜像文件,采用文件压缩方式减少虚拟机镜像文件的大小。 有多种VM映像格式可供选择,包括raw,qcow2,vmdk,vdi,vhd等。在这种情况下,我们选择qcow2,因为可以创建镜像的快照,并且占用较少的空间文件。在被转移到主机计算节点之后,图像文件将被解压缩以缩小其大小,同时减少网络传输。如果镜像文件已经存在于计算节点中,则节点将接收到创建虚拟机的请求后,创建新的虚拟磁盘并复制已有的虚拟机镜像文件,否则节点将请求Glance查看相关图像文件,而对象存储节点获取作为压缩映像文件的qcow2格式图像文件返回到计算节点,然后计算节点将解压缩qcow2图像文件为原始格式并复制。 随后部署虚拟机
为了减少网络传输,使用了来自Open Stack的Cache机制。如果等待启动的主机操作系统镜像文件已经在计算节点上建立,待等待建立的硬盘大小等于前一个,则不需要从图像服务节点下载图像文件,直接从本地图像副本中复制,节省了网络下载的成本。
第四章 应用
A. 计算机网络实验
我们的平台为学生提供了一个定制的虚拟网络进行计算机网络实验,允许学生做网络相关的实验,如设计拓扑图,部署新的路由协议,重新配置路由规则。我们的平台通过连接虚拟机来生成相应的真实网络,在虚拟机中,学生能够学习数据包的流程,并通过数据包捕获工具分析协议的过程和性能
RIP(路由信息协议)是一种流行的内部网关协议(IGP),适合于在自治系统(AS)内传送路由信息,通过实验,学生可以更好地理解RIP路由表的含义,掌握RIP协议的工作过程
在用户登录到虚拟实验平台之后,用户将进入在图2所示主操作界面。这个界面包含四个部分,其中顶部是菜单和工具栏,右上方是实验设备的列表,右下方是预设的实验列表;界面的主要部分是实验设计面板。用户可以将所需的实验设备从右侧拖入实验设计面板,并将所需的网络测试设备连接为物理连接。连接完成后,双击连接,配置连接所在网段的参数。
图2 平台的主界面
对于RIP实验,您可以选择网络实验设备,并根据图3所示的拓扑结果设置相应的参数。路由器是运行OpenWrt的虚拟机,而PC是运行WIN7的虚拟机。接下来,用户可以根据以下参数配置PC和路由器:其中包括三台路由器,每台路由器有三个接口,到网络的三台路由器分为六段:10.0.1.0/24,10.0.2.0/24,10.0.3.0/24,10.0.4.0/24,10.0.5.0/8和10.0.6.0/8。
图3 RIP实验的拓扑图
在实验界面中,用户点击Web界面中相应的网络设备直接访问其操作系统。 用户可以查看和设置网络设备的IP地址等参数。在实验开始时,由于没有配置RIP协议,PC2(10.0.5.3)无法访问PC1(10.0.4.3)。接下来,用户在Web界面进入路由器的操作系统,修改网络接口的IP地址,并定义在RIP中加载的网络。配置路由器后,打开三台路由器的quagga服务,启动相应的RIP服务。用户登录路由器R2,运行show route命令查看路由信息,如图4所示,说明RIP协议的有效性。
图4 R2的路由表
通过这个实验,用户可以在Web界面上建立网络拓扑,配置网络设备参数,测试网络环境,并直观地获得实验结果。 从而掌握RIP协议的原理和实现过程。
B. 用户反馈
自2014年以来,我们的平台一直用于中南大学“计算机网络”课程的教学和演示实验。共有600多名学生使用这个平台,其中大部分给予了积极的评价,老师也是如此。另外还提出了一些改进平台的建议。
第五章 结论
我们的平台引入了一个与计算机科学相关的实验解决方案,解决了以下问题:投资大,场地大,维护方便。它可以用于网络工程,网络攻击和防御以及计算机网络之外的程序开发等几门课程。
综上所述,我们设计和开发了一个基于Open Stack的虚拟实验平台,使用户能够自由选择实验资源并构建相应的网络拓扑。平台将自动创建相关的虚拟设备,并根据用户需求建立网络拓扑。然后用户可以访问实验资源并执行测试。
第六章 致谢
这项工作得到了国家自然科学的支持
中国基金会(61202494,61402541,61402542)
参考文献
[1] Karakasidis T.虚拟和远程实验室在高等教育远程学习物理和工程科学[C] //全球工程教育大会(EDUCON),2013 IEEE。 IEEE
全文共6248字,剩余内容已隐藏,支付完成后下载完整资料
资料编号:[12503],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。