基于多级存储技术的云教室架构设计与实现
2017-07-06李进
李进
【摘 要】为了解决云教室大量云桌面同时启动运行导致系统开机时间过长、运行缓慢的问题,提出了一种基于多级存储技术的云教室解决方案。该方案采用Hyper-V虚拟化技术,根据存储的I/O性能分别存储云桌面的不同数据,可有效地分散磁盘的I/O压力。通过实践效果分析表明,该方案能够克服磁盘的I/O瓶颈,有效地减少云教室开机启动的时间,从而提升系统运行的流畅度。
【关键词】云计算 云教室 多级存储
1 引言
随着计算机教育的不断发展,计算機教室已在学校普及,这在很大程度上提高了课堂的教学效果。但是传统计算机教室软件、硬件管理和维护复杂,长期运行还会导致系统运行缓慢,同时系统升级非常不便,而云教室[1]可通过云计算技术有效地解决这些传统计算机教室存在的问题。
云教室由一台云教室服务器通过虚拟化技术生成几十台云桌面虚拟机,但是由于磁盘的I/O(Input/Output,输入/输出)存在瓶颈,几十台云桌面同时开机运行会产生很高的I/O,容易引发启动风暴,导致启动时间过长、系统运行缓慢。基于此,本文通过内存的高I/O特性来解决磁盘的I/O瓶颈,设计并实现了一种基于多级存储技术的云教室方案,以适应云教室所需的启动快、运行快的需求。
2 多级存储技术简介
多级存储技术是指根据存储的I/O性能、数据的使用频率和保存时间,将不同数据存放在不同类型的存储上。本方案采用三级存储,分别是HDD(Hard Disk Drive,硬盘驱动器)、SSD(Solid State Drive,固态硬盘)和内存盘。其中,内存盘是用特定软件划定一块内存来当作硬盘使用,其具有和内存相同的I/O,但是断电后会丢失内存盘中的数据[2]。多级存储技术架构如图1所示:
在本方案中,内存盘专门用来存储云桌面的母镜像,可以极大地提高I/O,解决启动风暴问题,同时母镜像在云桌面的整个生命周期中都不会发生变化,只要在硬盘中存在副本,就不用担心断电导致内存盘丢失数据的问题;SSD用来存储云桌面差分盘,差分盘是基于母镜像创建一个子盘,对母盘的改动都记录在差分盘中,SSD的高性能可以提高云桌面的运行速率;HDD用来存储云桌面数据盘,保存用户数据文件,如学生作业、课件等。
多级存储技术能够分散磁盘I/O压力,解决磁盘I/O瓶颈问题,使得云教室系统运行速率提高,用户体验得到很好的提升。通过使用该技术,在教师上课、下课、教学互动中,可大幅提升学生使用云桌面的流畅度。
3 云教室系统架构具体实现
一个云教室包含云教室管理平台、云桌面、云终端和教师机[3]。云教室管理平台通过心跳监控云桌面和云终端,通过特定的消息通道向云桌面、云终端和教师机发送指令及消息;云桌面采用Hyper-V虚拟化技术和多级存储技术创建[4];云终端负责连接云桌面供学生操作;教师机则为教师提供课堂管理的辅助工具。
系统中多个核心组件之间相互配合,共同完成云桌面资源调度、教学管理和教学互动的功能。系统整体设计架构如图2所示。
3.1 教学系统镜像在多级存储方案中的使用原理
教学系统镜像即云桌面的母镜像,由管理员上传至云教室管理平台[5]。在云教室中,母镜像的状态分为启用和未启用两种。未启用状态时,母镜像存放在HDD中,作为备份数据;启用状态时,母镜像存放在内存盘中,作为云桌面的母镜像源文件使用。由于上传好的教学系统镜像默认是未启用的,所以存放在HDD中。当管理员需要创建云桌面时,首选需要启用镜像,管理平台会将母镜像复制一份到内存盘中,然后才能创建云桌面。母镜像的状态与存储位置如图3所示:
当服务器发生意外重启或者断电时,在服务器启动后,管理平台后台服务会根据镜像的启用状态将已经启用的镜像复制到内存盘中,由于差分盘的存在,母镜像不会做任何修改,所以复制完成后云教室系统可以正常使用,不会造成内存盘数据丢失的问题。具体流程如图4所示。
3.2 云桌面在多级存储方案中的原理及实现
一台云桌面的存储由系统启动盘和数据存放盘组成[6]。在多级存储方案中,数据盘保存在HDD中,用于永久保留用户数据,即使虚拟机被删除或者重建,数据盘中的数据依然存在,适合保存学生上课需要持久化的文件。
云桌面的启动盘由母镜像和差分盘两部分组成[7]。当云桌面启动时,云桌面从母镜像所在的内存盘中读取数据,将对母镜像的修改写入差分盘所在的SSD中。内存盘负担的是读压力,而差分盘负担的是写压力,如此将读写I/O分离,有效地分散了磁盘的I/O压力,如图5所示:
此外,云桌面启动时的读压力远大于写压力,采用高I/O性能的内存盘来负担读压力,可以避免启动时的I/O瓶颈。
3.3 多级存储方案中的云教室管理平台
云教室管理平台是管理平台提供了对云教室资源的统一监控和管理,包括镜像、云桌面、终端和服务器。并提供了图形化界面,方便教室管理和维护,所有云教室操作都可以通过管理平台进行[8]。
管理员可以通过云教室管理平台批量创建云桌面,后台采用多线程并发方式,50台云桌面能够在100 s内创建完成。通过内存盘加差分盘的方式,单台云桌面启动时间在3 s以内,实现真正的“秒启”[9]。
管理平台根据镜像规格设置云桌面的内存和CPU,根据管理平台配置设置云桌面的网络,将云桌面的网络配置、主机名信息写入云桌面的注册表中,云桌面启动后检测网络和主机名是否与注册表中的值匹配,若不匹配则自动修改。
创建云桌面流程如图6所示。云桌面启动完成后会向管理平台发送心跳包,管理平台可通过心跳包监控云桌面的运行状态。
同时,管理平台可实现根据预先设定的课程表自动切换课程[10]。具体流程如图7所示。
(1)管理员首先在管理平台上创建课程表,然后管理平台再根据配置好的课程表发起定时任务;
(2)等到课程表对应的时间点出现时,启动切换课程任务;
(3)管理平台先判断是否需要切换课程,若不需要则直接启动云桌面和云终端;
(4)若需要切换课程,则拷贝母镜像到内存盘中,重建云桌面;
(5)同时唤醒云终端,待云桌面启动完成后自动连接。
4 实践效果分析
通过多级存储技术,使用内存盘分散了批量云桌面同时开机产生的大量I/O压力,消除了使用硬盘存在的I/O瓶颈,并有效地减少了云教室系统的启动时间。
不同数量的云桌面开机时间对比如图8所示:
从图8可以看出,随着同时开机的云桌面数量越来越多,普通方案开机时间大幅增长,这是因为出现了I/O瓶頸,而多级存储方案开机时间的增长幅度明显小于普通方案。当50台云桌面同时开机时,多级存储方案开机速度较普通方案提升6倍以上。
5 结束语
本文提出了基于多级存储技术的云教室方案,并详细介绍了该方案的架构设计与实现原理。基于上述架构的云教室系统能够有效地减少云教室开机启动的时间,提升系统运行的流畅度,从而增强用户体验。经过不断地开发和完善,该方案已成功在多家中小学、高职院校试点上线,运行效果良好。
参考文献:
[1] 虞江锋,陈东毅,罗松,等. 云教室的建设技术集成与应用[J]. 计算机教育, 2017(3): 72-77.
[2] 杜然,黄秋兰,程耀东,等. 基于块的分级存储系统多样性机制设计与研究[J]. 计算机工程, 2016,42(12): 50-59.
[3] 李刚健. 基于虚拟化技术的云计算平台架构研究[J]. 吉林建筑工程学院学报, 2011,28(1): 79-81.
[4] 郑毅. 应用Hyper-V技术进行服务器虚拟化[J]. 电脑与信息技术, 2016,24(5): 37-38.
[5] 赵凤芝,王海英. 基于云计算的云课堂教学平台研究与应用[J]. 时代教育, 2016(23): 15-16.
[6] 轩永涛. 云桌面系统在高校实验教学中的应用研究[J]. 电子技术与软件工程, 2016(15): 94.
[7] 周素梅. 中小学云课堂解决方案——以延庆县中小学云教室建设方案为例[J]. 中国教育技术装备, 2015(7): 20-22.
[8] 黄苏. 教育(普教)行业CenDesktop云教室解决方案[J]. 科技创新与应用, 2016(11): 93.
[9] 刘哲. 基于云服务课堂教学的观察与思考[J]. 中国信息技术教育, 2013(5): 13-15.
[10] 胡钦太,郑凯,林南晖. 教育信息化的发展转型:从“数字校园”到“智慧校园”[J]. 中国电化教育,
2014(1): 35-39.