Moodle虚拟化集群研究
2016-12-10冯华丽韩小燕
冯华丽+韩小燕
摘 要:为解决Moodle在单服务器上负载压力过大的问题,应创建一个集群将过于集中的负载分摊给多台服务器。但是,资源浪费、结构不灵活等缺陷存在于物理集群之中。因此,为了统一管理和动态分配各种资源,设计一个Moodle虚拟化集群,结果证明,Moodle虚拟化集群能够缩短响应时间和提高事务处理能力。
关键词:Moodle集群;虚拟化;LAMP架构
中图分类号:TP93 文献标志码:B 文章编号:1673-8454(2016)19-0028-02
引言
Moodle是由澳大利亚Martin Dougiamas博士基于社会构建主义教育和以人为本的设计思想主持开发的一个免费的、开放源代码的网站管理、课程管理和学习管理系统,包含诸如论坛、资源、测验、投票、作业、问卷调查、Blog、聊天室和Wiki等模块。在虚拟的网络环境中,通过借助多种交互、协作、分享的软件,注重学习者和助学者(教师、专家、导员等)之间平等、对话、协作,具有门槛低、便于操作、功能强大、开放兼容等优势。它是目前世界上应用最广泛的在线教学平台之一[1]。
我校采用LAMP架构分别于2008年在联想万全R520 G7、2011年在惠普BL680c G5单服务器上部署了Moodle,并在全校广泛使用。经经验估算,在单服务器下,每1GB内存大约可支持最多50个并发用户,支持最多250个浏览用户[2]。内存为4GB的联想万全R520 G7服务器,按照前面的经验估算,可支持200人左右使用数据库的用户,可约保1000台电脑同时浏览该系统网页;内存为8GB的惠普BL680c G5服务器,按照前面的经验估算,可支持400人左右使用数据库的用户,可约保2000台电脑同时浏览该系统网页。Moodle在部署前期,服务器所提供的访问基本能够满足用户需求。根据无锡商业职业技术学院〔2014〕15号《关于深化内涵建设 提升办学质量和水平的意见》文件精神,学校3年期间(2015-2017年)在Moodle平台改建新建校级精品课程资源300门的需要,原有的单服务器架构无法满足大规模课程建设的需要,单服务器负载的压力过大,无法满足需求,需要采用多服务器。在这种情形下,我们考虑采用服务器集群。
一、Moodle物理集群
在单服务器上部署的Moodle包含三部分①创建空数据库,用来动态存放用户和课程等数据。②Moodle子目录,用来存放Moodle源程序安装的所有文件,保护Moodle程序文件不可以被Web服务器的用户随意更改。③创建(moodledata)数据目录,用来存储Moodle系统的所用文件,包括系统上传的文件,临时数据,会话数据等,如教师的教学常规、学生参与的活动以及提交的作业。Web服务器需要这个目录具有写入权限,在大型的Moodle安装实例中,这个目录越大越好。
在单服务器之后,我们曾尝试采用物理集群的方式。具体为:采用两台物理服务器的形式。一台为数据库服务器,一台为网络存储器及负载均衡服务器。虽然物理集群解决了在单服务器上部署Moodle负载能力趋于饱和的问题,能够基本满足用户大量访问的需求,但却有如下缺点,物理集群的多台服务器能够满足全校师生的使用需求,但是很多资源并未能得到充分使用,造成了一定程度的资源浪费;结构不够灵活,不便于扩展新节点。
二、基于无锡商业职业技术学院的Moodle虚拟化集群构建实例
通过虚拟化技术可以提高资源的利用率,提高IT架构的可管理性和管理效率,提高系统可靠性、业务连续性,实现灵活、快速地部署,提高安全性。运用虚拟化技术构建Moodle集群,可以弥补物理集群的不足。
为了完整地实现无锡商业职业技术学院对VMware虚拟化应用解决方案的要求,实施环境配置三台X86服务器用于安装VMware的ESX Server,每台服务器配置4个千兆网口。为了实现VMotion、HA及DRS等VSPHERE的高可用性特性,采用光纤存储方式,共配置4个8Gb/s FC+8个1Gb ISCSI主机通道;每台服务器配置一块单口8GB HBA卡。
1.服务器虚拟化设计
随着师生利用网络越来越频繁,以及业务系统、应用平台的日益增长的需要,学校的办公和教学系统已达40多个,相关的配套服务器已经超过50台。由于各应用平台操作系统不同、软件开发环境不同等因素限制,根据我校服务器虚拟化设计方案,只用3台物理服务器就可以实现对40多个业务的应用部署,服务器虚拟化采用设备清单见表1。
VCSA,即VMware vCenter Server Appliance 是预配置的基于 Linux 的虚拟机,并针对运行 vCenter Server 及关联服务进行了优化。VCSA包括自动部署、日志收集器、ESXi垃圾收集器以及vSphere Web Client服务。
安装好ESXi后,便可以使用vClient登陆ESXi,在ESXi主机上安装VCSA虚拟机,部署VCSA模版的过程:①选择到本地存放的OVF模版文件或OVA模版文件;②部署虚拟机,包括自定义虚拟机的名称、选择磁盘格式;③右键编辑配置查看和修改虚拟机配置;④启动虚拟机。
通过客户端或浏览器登录。可见通过模版部署可以大大简化安装步骤,节省时间,同时vCenter使用的是Linux操作系统,而非Windows,其稳定性和资源利用率较有优势。内嵌的数据库是个免费的DB2,可以支持100台主机和3000个VM。Windows操作系统比Linux虚拟机的受攻击平面更大。即便你不是Linux专家,也可以在Linux上对vCSA进行管理。部署之后,应用就会为你提供一个简单的访问接口,引导你完成所有的配置步骤。
2.网络虚拟化设计
Moodle虚拟化集群中,每台物理服务器安装 4 块网络接口卡(vmnic0~vmnic3),网络接口卡vmnic0连接虚拟交换机vSwitch0,网络接口卡vmnic1、vmnic2连接虚拟交换机vSwitch1,网络接口卡vmnic3连接虚拟交换机vSwitch2。其中, vSwitch0的Service Console端口连接至管理网络, vSwitch0连接校园一卡通VLAN172专网;vSwitch1利用vSwitch的地址转换功能将VM接入到虚拟网络VLAN250,从而实现各虚拟机的网络通信功能;vSwitch2连接到银行专网。如图1所示。
3.存储虚拟化设计
存储虚拟化通过在物理存储系统和服务器之间增加一个虚拟层,将服务器使用的物理存储虚拟化成逻辑存储。服务器只和逻辑存储打交道,而存储硬件增减、调换、分拆、合并对使用者完全透明[4]。目前VMware v Sphere 支持的共享存储有 FC SAN、i SCSI SAN 和 NFS NAS 三种,我校采用共享存储来承载虚拟机及其数据。
Moodle 虚拟化集群中的存储采用光纤FC SAN 方式,是一种基于光通道体系的存储网络系统,它可以提高系统运行和反应的速率,进而经过多项高端的功能,加强数据安全的保障。
存储设备的主要功能是存放 VM 和磁盘文件,包括 VM 本身的配置文件、虚拟磁盘、Snapshot 的Redo 文件等,moodledata 目录中的所有文件都存放在该设备中。
三、小结
Moodle虚拟化集群,大大减少了物理服务器的数量,简化了我们对服务器的管理,实现了对资源的快速调配[5]。我校在Moodle虚拟化集群运用一年时间内,运行稳定,值得研究、推广。
参考文献:
[1]黎加厚.信息化课程设计[M].上海:华东师范大学出版社,2007:1.
[2]常金娥,陈晋玲.Windows下Moodle平台的构建[J].科技信息,2007,1(36):201-202.
[3]无锡中科新瑞系统集成有限公司.无锡商业职业技术学院服务器虚拟化实施方案[Z].2014:5.
[4]朱晓蒙. 基于云存储的高校教育资源平台[D].西安:西安科技大学,2012:22-23.
[5]林冬茂.基于虚拟技术的服务器“群”应用的研究[J].微计算机信息,2010,26(3):216-217.
(编辑:王晓明)