基于KVM虚拟化的慕课平台设计与实现

2016-10-29 01:52莫永华
现代计算机 2016年27期
关键词:中间件桌面虚拟化

莫永华

(桂林电子科技大学信息科技学院,桂林 541004)

基于KVM虚拟化的慕课平台设计与实现

莫永华

(桂林电子科技大学信息科技学院,桂林541004)

随着国内外慕课教学的方兴未艾,在线参与人数迅猛增长,给传统服务器的访问带来了巨大压力。通过KVM虚拟化技术解决慕课教学平台问题,设计原生虚拟化的VDI架构,部署虚拟桌面服务器端、云终端和连接管理中间件,实现慕课平台“集中计算、分布显示”的解决方案,并给出在Intel高密度服务器上实施慕课平台的VDI系统。

慕课平台;服务器虚拟化;KVM

0 引言

随着“互联网+”成为中国经济提质增效升级的新引擎,全民掀起了“大众创业、万众创新”的实践热潮,高校教学也迎来了新的发展时代。大规模在线公开课程 (Massive Open Online Course,MOOCs下简称慕课)一个创新教学模式,出现在国际知名大学并创建了edX、CourSera、UdaCity三大慕课教学平台而名声大噪,慕课的优点在于通过互联网对优秀教育资源在线开放,可以大规模接纳学习者,打破了传统教学在地域和时间上的局限,使得更多人享受平等的教育权利,推动全民学习化社会的形成。慕课的发展推动了中国新一轮高等教育观念革新,深刻影响了传统教学模式、教学方法,国家教育部也将在“十三五”期间大力支持各高校推广、建设、使用具有中国特色的MOOCs课程。

发展慕课,慕课平台必不可少。慕课的推广需要优秀的慕课平台,我国的慕课平台在技术上的应用仍处于早期发展阶段。慕课平台需要基本的4大功能:学生用户注册管理、慕课在线视频管理、教学师生互动与评价管理和慕课平台的大数据分析,从而满足慕课学前资料准备、课程中在线学习和课堂讨论、课后评价与教学思路调整等教学环节。

1 我国高校慕课平台现状分析

慕课平台用什么样的技术才能保障大规模在线开放访问呢?传统服务器紧耦合模式下的C/S架构、B/ S架构已经不能满足需求了,原因在于不适应慕课教学的三大特点:第一、大规模在线开放课程,在线学习人数多;第二、在线操作学习全天候开放;第三、学习和分析数据量大。下面是一个慕课学习的案例,在斯坦福大学推出的“人工智能导论”慕课曾经一度注册用户超过16万人,面对16万用户假如同时在线学习、在线互动讨论、在线评价,传统服务器是难以提供支持的。慕课平台碰到几个主要瓶颈:

(1)性能不能满足。服务器在紧耦合模式下如果遭遇大规模用户访问,将引起服务器资源枯竭。

(2)资源调度不灵活。硬件、操作系统、应用和使用者之间的资源分配与调度不灵活。

(3)资源浪费。新旧服务器、不同品牌服务器之间难以实现统一资源管理,无法高效利用和降低成本。

(4)数据保存与安全问题。大规模用户能产生大量数据,在传统服务器中存放、备份和还原都是难题。

解决以上问题,需要创新应用虚拟化技术,本文针对Linux系统采用KVM、QEMU、Libvirt和SPICE等技术,创新设计原生虚拟化的VDI架构,部署虚拟桌面服务器端、云终端和连接管理中间件,实现慕课平台“集中计算,分布显示”的私有云慕课平台解决方案。

2 慕课平台VDI实现方案

慕课平台采用桌面虚拟化架构 (Virtual Desktop Infrastructure,VDI),主要技术是服务器虚拟化。虚拟化技术(Virtualization Technology)是快速发展的资源管理技术,它可以将计算机的各种实体资源(CPU、网络、内存及存储等)首先抽象,然后转换后呈现出来,最后灵活分配到应用系统。在原有计算机系统架构上打破实体结构间的紧耦合状态,使用户以快速、灵活的方式来应用这些资源。服务器虚拟化技术体现出对资源的整合、成本的降低、利用率的提高等优势。如图1服务器虚拟化的实现。

图1 服务器虚拟化的实现

本文中慕课的虚拟平台采用Linux系统,KVM虚拟机(Kernel-based Virtual Machine,KVM)是Linux核心的虚拟化技术,以内核模块的形式而存在,需要硬件支持(如Intel VT技术或者AMD V技术)。这一体系虚拟机经历了从寄宿虚拟化到原生虚拟化的实现发展。随着越来越多的虚拟化功能被加入到 Linux内核中来,Linux已经成为虚拟机管理系统Hypervisor,因此KVM是原生虚拟化模型。

2.1Linux核心的虚拟化技术原理

传统慕课平台的软件与硬件是紧耦合的,KVM技术可以将计算机的各种实体资源(CPU、网络、内存及存储等)予以抽象,如CPU基于 Intel VT技术的硬件虚拟化,然后结合QEMU(虚拟操作系统模拟器)来提供设备虚拟化并转换后呈现各种虚拟机,最后灵活分配到应用系统。如图2 KVM虚拟化的原理。KVM虚拟化技术体现出较强的灵活性,能较好地将不同的操作系统(基于x86架构的Linux、Unix、Windows操作系统)和不同厂商的硬件设备加以整合利用。在Linux系统中KVM使用底层硬件的虚拟化支持来提供完整的原生虚拟化,底层硬件只要支持虚拟化,它就能够为大量的慕课用户按资源需求合理地分配虚拟机。

图2 KVM虚拟化的原理

慕课平台服务器经过虚拟化后在不更改客户机操作系统(Guest Operating System,Guest OS)和应用程序的前提下,借助虚拟技术合理分配到的硬件资源运应到业务系统,宿主机(Host Machine)的硬件和客户机操作系统上的软件相互独立,每台机器运行多个虚拟机,部署运行多个应用。

2.2慕课平台DVI系统组成

分析了慕课平台的服务器虚拟化技术之后,接下来就是慕课平台中服务器端和大规模的用户端之间的运行模式和系统架构的设计。与传统两大应用系统客户机/服务器(C/S)、浏览器/服务器(B/S)的架构有所不同,该平台采用桌面虚拟化架构 (Virtual Desktop Infrastructure,VDI),首先通过服务器虚拟化技术,然后在服务器数据中心内进行集中处理,而桌面用户不参与任何计算和应用,解放客户端的运算,最后在桌面用户输出与界面显示。这种客户端可以采用专用小型终端机或瘦客户端的方式,仅负责输入输出。桌面虚拟化架构实现“集中计算,分布显示”功能。这也是当下热门“私有云”的技术,其核心也在实现桌面计算虚拟化。

慕课平台的桌面虚拟化架构主要由三部分组成,分别是虚拟桌面服务器端(主机端)、终端用户桌面端(云终端)以及主机端和云终端的连接管理中间件(Broker中间件),桌面虚拟化架构组成。如图3 VDI架构组成模块的逻辑关系。

图3 VDI架构组成模块的逻辑关系

在VDI架构中各模块功能和软硬件实现,如下表1 VDI三大模块功能表。

表1 VDI三大模块功能表

在整个VDI架构中两个重要技术,一个是虚拟桌面服务器创建成百上千个虚拟桌面客户端。另一个是Broker中间件连接云终端与 Host端、管理主机端资源(虚拟机与硬件资源)。它像桥一样把Host端虚拟机和云终端连接在一起。慕课平台应用首先用户通过云终端从Broker中间件中获取到用户的虚拟桌面,然后调用客户端桌面显示协议(SPICE)连接到Host端所提供的SPICE服务端进行通讯。对于Broker中间件管理功能是通过提供 Host Agent接口给主机端上的 Host A-gent模块来管理主机端上的虚拟机以及 Host端上相应的资源。

3 慕课平台KVM虚拟化实现

3.1硬件与软件部署

(1)慕课虚拟化系统服务器硬件

平台服务器池采用Intel原装高密度服务器,计算节点4个。具体参数如下:

(2)服务器虚拟化部署

●管理服务器:应用Intel服务器第一个节点,在服务器上安装 CentOS 6.5操作系统,部署Broker连接管理软件。将“broker.tar.gz”文件拷贝到安装服务器的“/opt”目录下,解压后运行命令“tar xvzf broker.tar.gz”,另外部署Broker连接管理软件、SQL数据库服务,实现对主机资源和数据的管理。

●虚拟桌面服务器:应用Intel服务器剩下三节点,安装CentOS 6.5操作系统,用于创建虚拟机并提供虚拟桌面虚拟机,每台虚拟机可以配置2G内存。每个虚拟桌面被分配独享资源(虚拟CPU、虚拟内存、虚拟硬盘)。虚拟桌面之间相互独立,并可以根据用户业务要求灵活进行配置。对于特殊的用户需要可以部署、分配不同的操作系统(Windows XP、Windows 7、Linux等)。

(3)部署虚拟化软件

●服务器虚拟化软件:部署QEMU-KVM和Libvirt,创建虚拟机,实现资源虚拟化。

●桌面虚拟化软件:实现云终端机与虚拟机间的连接,实现录入信息与计算结果的安全传递与呈现。

●连接管理软件:用于管理云终端机、虚拟机、用户等之间的关系。

3.2应用测试

对慕课在线课程下的学生桌面进行独享连接或共享协助测试。

4 结语

为满足MOOCs平台大规模在线访问需求,本文在Intel高性能服务器上利用Linux系统KVM虚拟化技术,实现慕课平台的VDI架构建设、以“集中计算,分布显示”的设计满足慕课访问需求,另外虚拟化和慕课平台有效地结合,极大地整合了慕课平台服务器的资源、降低了系统建设成本、提高了服务器利用率。

表2 慕课平台下桌面虚拟化的应用测试

[1]袁松鹤,马若龙.MOOCs:开放、争论与启示[J].中国电化教育,2014-1,324

[2]邓宏钟,李孟军.“慕课”发展中的问题探讨[J].科技创新导报,2013,7

[3]李桂林,崔广章,李永宝.OpenStack云环境中KVM虚拟机性能测试与优化[J].物联网技术,2016

Design and Implement of the MOOCs Platform Based on Kernel-Based Virtual Machine

MO Yong-hua
(Institute of Information&Technology,Guilin University of Electronic Technology,Guilin 541004)

With the vigorous development of the global MOOCs teaching,the number of online participation has increased rapidly,and the traditional server's access pressure is huge.The KVM virtualization technology solves MOOCs teaching platform problem,designs a native virtualization VDI architecture,the deployment of virtual desktop server,terminal user desktop and connection management middleware,realizes MOOCs platform"Centralized Computing,Distributed Display"solution,realizes the MOOCs class platform VDI system based on Intel high density server.

MOOCs Platform;Server Virtualization;Kernel-Based Virtual Machine

1007-1423(2016)27-0064-04DOI:10.3969/j.issn.1007-1423.2016.27.016

莫永华(1978-),男,广西桂林人,研究生,讲师,研究方向为

2016-07-19

2016-09-20

计算机网络、网络安全技术

猜你喜欢
中间件桌面虚拟化
西瓜桌面桶
基于OpenStack虚拟化网络管理平台的设计与实现
对基于Docker的虚拟化技术的几点探讨
RFID中间件技术及其应用研究
基于Android 平台的OSGi 架构中间件的研究与应用
桌面装忙
浅析虚拟化技术的安全保障
H3C CAS 云计算管理平台上虚拟化安全防护的实现
用好Windows 10虚拟桌面
云计算环境下中间件的负载均衡机制研究