高校云计算实训方案的设计与实现
2021-03-24张沛昊
张沛昊
(南京工业职业技术大学计算机与软件学院,南京210023)
0 引言
云计算技术已广泛应用于各行业,具有一定的经济效益。在职业教育领域,华为与高校联合开展校企合作和专业共建,培养云计算专业人才。云计算专业实训需要使用大量的硬件资源,包括服务器、交换机、路由器、存储等企业级设备,这些设备对于大部分学习者来说是遥不可及的。华为的云计算产品FusionCom⁃pute 对硬件要求较高,而个人电脑无法提供高性能的CPU、大容量的内存和固态硬盘等,导致学生在学习华为云计算的过程中遇到资源受限的障碍[1]。目前,多数院校和培训机构虽然具备中小型的物理数据中心,但在开展实训课程时仍无法满足每位学生独立使用一台物理服务器的需求[2]。众所周知,云计算的巨大优势是充分利用物理资源[3],因此本文提出从嵌套虚拟化的角度出发,将物理服务器虚拟成多台虚拟服务器,学生使用虚拟服务器进行实验,在保证功能和性能的同时有效解决物理资源匮乏的问题。
1 技术选型
1.1 物理服务器方案
目前,多数院校和培训机构直接在物理服务器上开展华为FusionCompute 实训,一台物理服务器只能搭建一套FusionCompute 单节点环境[4],该环境包括一个计算节点及一台运行在计算节点上的管理虚拟机。该方案优点是直接、便捷,但当学生人数增多时,会遇到较多痛点:
(1)实训室物理资源有限。学生人数远大于物理服务器数量,导致物理资源无法并行使用,无法保证每个学生拥有一套独立的实验环境,必须将学生分组分时间段使用物理服务器,严重影响教学进度。
(2)学生实训地点受限。FusionCompute 对计算机配置要求较高[5](例如搭建一个集群至少需要2 台服务器,单台服务器内存要求20GB 以上),学生的个人电脑配置可能无法满足硬件需求,导致学生离开实验室机房后没有实验资源,学习受到地理位置的限制。
(3)管理工作繁杂。硬件资源没有统一平台进行有效管理,每次开展实训项目前要准备环境,实训结束要销毁环境,大量的重复工作将耗费教师的宝贵时间。
1.2 嵌套虚拟化方案
针对物理服务器方案遇到的痛点,本文寻求使用嵌套虚拟化技术解决。目前,市场上虚拟化厂商的产品多种多样,主流的软件包括VMware vSphere、Citrix XenServer、Microsoft Hyper-V、RedHat KVM 等,其中仅KVM 开源免费使用[6]。VMware vSphere 等商业产品因其功能丰富,稳定成熟,操作界面友好,在企业中使用率较高。但商业软件的高级功能需要付费才能使用,并且实验发现FusionCompute 无法在vSphere 等商业软件上兼容,但在KVM 上可以正常运行[7],因此将研究重点投入KVM。KVM 因其开源性、兼容性等优势得到众多企业的青睐。在院校落地虚拟化平台方案时,选用KVM 作为底层虚拟化技术。在KVM 虚拟化层上创建华为的虚拟服务器,学生可以在虚拟服务器继续创建虚拟机,这种方式即嵌套虚拟化,既保证了服务器数量的需求,同时兼顾实训的性能要求。随着虚拟服务器使用量的显著增加,需要高效的管理平台进行管理。目前主流的开源平台有OpenStack、oVirt、Proxmox 等[8]。OpenStack,功能特性多,被较多大型企业所使用[9]。oVirt 的功能较基础,适用于中小型应用场景。Proxmox稳定性较高,占用资源少,部署简单,可以应用于教学实训的场景[10]。各平台的综合对比如表1 所示。
表1 主流虚拟化管理平台的对比
本方案基于开源的云管理平台Proxmox 构建适合高校的云计算实训平台。学生通过该实训平台进行技能训练,理解云计算的体系架构、关键特性及核心技术,学生课后离开机房,只要接入校园网,就可以随时随地开展实验,不受地点限制。教师通过平台可以进行二次开发,统一管理软硬件资源,批量准备环境及销毁环境,为管理提供便利[11]。综上,选择开源的Prox⁃mox 作为底层管理平台,并在其上层实施FusionCom⁃pute 实训方案具有可行性。
2 方案构建
2.1 核心需求描述
校企合作中,实训的目的是培养学生的职业技能和职业素养。因此实训模拟小型企业实际场景,要求学生作为云计算实施工程师,利用虚拟化资源为企业搭建FusionCompute 私有云,核心需求如下:
(1)权限划分:管理员具有最高权限,管理云平台所有资源;普通员工只能使用自己的资源。
(2)VLAN 划分:不同部门的虚拟机使用不同的网络,不相互影响。
(3)虚拟机业务:员工可以正常使用虚拟机,进行克隆、快照等常规操作。
(4)网络平面划分:管理、业务、存储平面分别对应独立的网卡,保证性能。
(5)接入共享存储:云平台可以使用IP-SAN、NFS等类型的共享存储。
2.2 规划设计
本方案使用通用的x86 服务器和交换机,对硬件资源无特殊要求。以单台服务器为例,使用华为RH2288V3 系列服务器(CPU:Intel Xeon CPU E5-2620 v4 @ 2.10GHz、128GB 内存、1TB 硬盘、3 块千兆网卡)。为保证网络性能,将3 块物理网卡分别对应不同业务的流量。其中,eth0 连接管理平面,eth1 用于业务平面,eth2 对应存储平面。方案架构设计如图1 所示。
图1 FusionCompute实训方案架构设计
服务器管理网卡连接交换机的Access 口,业务和存储网卡连接交换机的Trunk 口,提前在交换机上划分VLAN(需要交换机的配合,交换机相应的上联口配置为Trunk 模式)。在物理服务器上安装Proxmox VE系统,简称PVE 服务器。PVE 服务器需要创建三个网桥:第一个网桥vmbr0,类型为Linux bridge,PVE 服务器的管理网卡eth0 和上层CNA 虚拟服务器的管理网卡eth0 均桥接到vmbr0 上;第二个网桥vmbr1,类型为OVS bridge,PVE 服务器的业务网卡eth1 和CNA 虚拟服务器的业务网卡eth1 均桥接到vmbr1 上;第三个网桥vmbr2,类型为OVS bridge,PVE 服务器的存储网卡eth2 和CNA 虚拟服务器的存储网卡eth2 均桥接到vmbr2 上[12]。
2.3 方案实现
(1)安装虚拟化系统
从Proxmox 官方网站下载Proxmox VE 6.2 版本的ISO 镜像文件,并将该镜像挂载到物理服务器的虚拟光驱上。设置服务器从光驱启动后,进入Proxmox 系统安装界面,按照向导提示安装Proxmox 系统。安装过程中需要配置地区、时区、root 密码、主机名等,并为第一块物理网卡eth0 配置管理平面的IP 地址(例如192.168.1.10/24,网关192.168.1.1)。系统默认会自动创建Linux bridge 类型的网桥vmbr0,并将eth0 桥接到vmbr0 上,eth0 承载管理平面的流量。
(2)配置网络
打开浏览器输入Proxmox 管理平台地址(例如https://192.168.1.10:8006)访问Web 控制台,使用root账号登录,安装OVS 软件并创建OVS 网桥vmbr1,将PVE 服务器的第二块网卡eth1 桥接到vmbr1 上,eth1承载业务平面的流量;创建OVS 网桥vmbr2,将PVE服务器的第二块网卡eth2 桥接到vmbr2 上,eth2 承载存储平面的流量。
以上两步完成后平台可投入使用。在PVE 服务器上创建多台CNA 虚拟服务器,每个学生分配一台CNA 虚拟服务器后,即可开始FusionCompute 实训。
3 业务测试
3.1 测试过程
(1)发放虚拟服务器
登录实训平台,制作CNA 虚拟服务器模板(8vCPU、host 模式、300GSATA 硬盘、20G 内存、三块E1000 网卡,挂载CNA 的ISO 镜像)。基于模板使用链接克隆方式发放5 台虚拟服务器(发放数量取决于物理服务器的硬件配置),将虚拟服务器上电后按照安装向导完成CNA 系统安装。安装过程的重点是配置网络,为CNA 虚拟服务器的管理网卡eth0 配置管理平面的IP 地址。
(2)搭建实训环境
使用华为提供的安装工具FusionComputeInstaller在CNA 虚拟服务器上安装VRM 管理机,完成一套Fu⁃sionCompute 实训环境的搭建。重复该步骤完成5 套实训环境的搭建,并记录逐步增加实训环境数量时,单台物理服务器的资源使用统计如表2 所示。
表2 资源使用统计
(3)业务操作
学生登录各自的FusionCompute 实训环境,根据需求配置网络和存储资源,进行设计和业务操作,验证是否实现核心需求。
3.2 测试结论
(1)资源超分配
基于模板创建虚拟服务器时使用链接克隆方式,存储使用精简置备方式,因此虚拟服务器对物理服务器的资源消耗较少,实现了内存和硬盘资源的超分配,即所有虚拟服务器的内存和硬盘总和可以超出物理服务器的实际值。
(2)转换率
本次测试所用服务器的硬件配置属于中低端,无特殊硬件要求,因此大部分院校和企业的硬件条件均可满足。测试数据显示发放5 套实训环境后,使用了该服务器50%的CPU 和50%的内存,剩余的CPU 和内存资源用于发放业务虚拟机。在本次硬件配置的服务器上实现了1:5 的转换,即一台物理服务器可以虚拟化出5 套实训环境。通过提升服务器的硬件资源即可将该转换率增大。
(3)功能与性能
在单台物理服务器上虚拟出的5 套实训环境上同时开展实训任务,使用体验上与物理服务器十分接近,无卡顿等异常,学生可以顺利完成FusionCompute 云计算实训的所有任务,实现实训的核心需求,达到预期的实训效果。
4 结语
本文给出了基于嵌套虚拟化的云计算实训方案,将单个物理服务器按照一定的转换率虚拟成多套实训环境,可以有效解决高校缺乏物理服务器的难题,提高服务器资源利用率,为更多学生提供学习云计算的实验环境。实训环境与企业场景相结合,场景化的实训使学生掌握职业技能并正确处理工作过程中遇到的问题,提升综合能力。在此基础上扩大企业场景,将多台虚拟服务器组成集群,并使用分布式存储技术实现超融合平台,能够最大程度发挥硬件能力。该方案具有通用性,同样适用于其他虚拟化产品的实训,后续将重点研究并开发云计算综合实训平台,适配多门课程,提升高校云计算实训室的建设能力。