第31卷第3期广东石油化工学院学报Vo/31No.3 2021年2月Josm/of Guangdong UnOosity of PXmchoiOal Tohnolosy Jime2021
轻量级大数据实验平台设计与实现I
游贵荣,黄清兰,乐宁莉
(福建商学院信息技术中心,福建福州354012)
摘要:针对现有大数据实验平台成本较高、总体部署效率较低,扩展性较差等问题,提出利用容器虚拟化技术,采用Dockee、KuUernetes(K8s)'Rancher、JumpServer等开源组件来快速构建轻量级大数据实验平台的端到端解决方案,阐述了平台使用的相关技术,包括容器编排、容器数据的持久化、访问容器中的图形界面、用户如何访问容器集提供的服务,并通过简单二次开发实现批量部署大数据实验环境等内容。实验测试表明,该平台具有建设成本较低、部署效率高、可扩展性强等特点,能够满足日常教学与实验需求,具有较好的应用价值和推广意义。
关键词:虚拟化;Docker容器;Kubernetes;Rancher;Haboog集
中图分类号:TP311.5文献标识码:A文章编号:2095-2562(2021)03-0034-04
应用型本科院校开设的大数据专业课程涉及的专业知识实践性都很强,要培养合格的“技术技能型”人才,配套实验条件必不可少。构建大数据实验环境常见的解决方案有[12]:(1)使用虚拟机(VM)软件运行多个VM OS来构建伪分布式大数据模拟实验环境。受限于硬件性能,此方案实验体验差,学生无法在非实验室的环境中进行实验,实验中间结果保存比较困难。(2)购买云服务。此方案虽性能稳定、不限实验场所限制,但难以满足个性化需求且购买成本较高。(3)购买专业的大数据实验平台。此一体化解决方案除软、硬件外,还包含专业相关课程的教学资源,这是资金充裕高校的首选方案。
大数据源于开源,并基于开源不断演进,其相关软件的发展也是以开源软件为主导。为降低成本,本文提出一种在云计算基础设施上构建大数据实验平台端到端的解决方案。该方案具有开放性好、成本较低、性能稳定、可灵活定制等优点,所涉及的软件组件均为开源版本。学生在此平台实验或参与平台建设,有利于增加对开源技术的认识、树立正确的开源意识,更好地开展开源人才的教育培养⑷。本文的创新点在于采用容器虚拟化技术构建了一个廉价的分布式大数据集实验环境,并利用堡垒机技术与网络共享存储技术,以便捷的方式实现对集内部的虚拟容器主机进行统一集中管理及实验全过程的管控。
1相关技术
(1)容器虚拟化与容器编排。容器虚拟化在OS层进行资源隔离与控制,实现在同一个OS内核上运行多个
相互隔离的执行环境。Dochar作为一个开源轻量级应用容器引擎,其设计目标是快速构建、交付和运行分布式应用。开发者可将应用及其相关依赖包打包到一个可移植的容器中,Dochar的分层镜像机制,使得部署与运营维护工作较为简单、启动速度快、占用资源少。目前K8s是容器编排领域的事实标准,但其安装和部署都较复杂,使用门槛较高,不利于推广。本文使用Rancher开源容器管理平台来快速部署和管理容器,以及创建和管理K8s集。为保存容器应用生成的业务数据,采用开源共享存储网络文件系统(NFS),客户端将NFS服务器共享的目录挂载到本地,用户可透明无感知地读写NFS服务器上的文件⑷。通过一台NFS服务器来集中存放学生实验过程产生的数据,便于教师检查学生的实验结果。
收稿日期:2726-06-72;修回日期:ZOZO-5-5
基金项目:福建省中青年教师教育科研项目(JAT50687,JU50636)
作者简介:游贵荣(574—),男,福建上杭人,硕士,副教授,主要研究方向为智能信息处理
第3期游贵荣等:轻量级大数据实验平台设计与实现31
(2)堡垒机。堡垒机(跳板机),主要用于维护人员进行中转、代理登录目标系统或设备,并实现对运营维护行为的控制和审计。由于处于容器集内部网络中的虚拟容器主机在校园网环境中无法直接访问,本实验平台采用在容器集中部署开源堡垒机JumpSerwr的解决方案,在容器集中只需对外发布
堡垒机服务的IB和端口,用户统一利用浏览器登录堡垒机来访问虚拟容器主机。堡垒机提供基于网页的虚拟终端(Wed Terminai)功能,可通过SSH、Telnct、RDP、VNC等协议管理目标设备。教师若要抽查学生的实验操作过程,还可利用其审计功能来实现操作过程回放。
2平台架构与设计实现
2.1平台架构
本实验平台可在多台独立的xP6裸机上创建容器集,也可在已有云计算基础设施上创建,相较于已有的大数据实验平台架构,本设计方案的优点有71)可充分发挥K8s集优势,对硬件性能指标没有统一要求,节点故障不会导致服务中断,且节点扩展易
于实现;(2)利用开源Rancher组件快速部署和管理
K8s集;(3)堡垒机的应用省去了容器集内部虚
拟主机的对外服务发布操作,用户仅需通过浏览器
登录堡垒机即可访问各自的实验容器主机环境,简
化用户实验环境访问方式,提升用户体验;(4)利用
集中式网络共享存储,实现实验过程数据的持久化,
便于教师教学过程考核;(5)平台与校园网的集成,
使得用户访问实验平台不受时间与地域的限制。
实验平台架构(见图3主要包括资源层、容器层、接口层和业务层。各类用户统一使用Wed方式访问集所提供的服务。(5资源层。Rancher可在安装有支持Dochcr引擎OS的xP6裸机或基于VM
由Rancher管理的K8s集
:支持系统平台的容器■:
|JumpServer服务IN
11.
|OpenLDAP服务liil
|K&系统服务|n
|Rancher管理服务|
支持Dockei•的OS:如CentOS,Ubuntu,RancherOS等
1|EXSi、KVM、OpenStack等VM x86裸机
本地或网络存储设备
图1轻量级大数据实验平台架构
技术的云平台中创建和管理K8s集。为了提高平台系统性能与安全性,将开源容器镜像仓库HaUor和NFS部署在独立的物理主机或VM中。(2)容器层。容器层主要包括支持系统平台服务的容器和大数据实验相关的容器。为实现高速下载,实验相关的容器镜像应先放入HaUor。OpenLDAP是开源轻量级目录访问协议服务,用于管理登录账号。(3)接口层。REST API是云平台中流行的基于Wed通信协议的应用程序编程接口。尽管Rancher A Harbor与JumpServcr都提供功能较为完整的图形界面,可完成多数与实验相关的操作。但部分批量创建实验场景及某些个性化的需求,仍需利用接口进行二次开发。(4)业务层。业务层是在开源平台基础上二次开发得到的一个
Wed服务,相当于给用户提供一个统一的门户,将
常用功能集中在一起,实现一键部署各类大数据实
验环境。
2.2容器集网络结构与用户访问方式
(1)容器集网络结构。在K8s集中要联通各个节点主机,需要在Dochcr的桥接网络上用第三方插件来创建重叠网络实现跨主机访问。Rancher 创建的K8s集默认使用Flaunei,其底层通信协议米用VxLAN,集网络结构见图2。重叠网络通过各容器节点主机的Ianen1虚拟网卡将各子网连接在一起。当K8s创建Pod时,会为Pod创建虚拟网卡对(veth pair/连接到docheib网桥。flaunei,3也docker0:17247.0.1/16docker0:172.17.0.1/16 flannel.1:10.42.0.0
实验楼用户学生宿舍用户图2容器集网络结构
flannel.l:10.42.1.0
32广东石油化工学院学报2021年
连接在dochem上,它接收运行在不同主机上Pod的数据,并将其转发给flanneiy进程。Pod指K8s中包含一个或多个紧耦合的应用程序容器,可看成是应用层的“逻辑宿主机”,有独立IC地址,不同的Pod可使用Pod名作为相互通信的主机名。
(2)用户访问容器服务的方式。本平台中JumpSovcr是唯一需对外发布服务的工作负载,将其8端口以NodePoe类型的服务映射到集的34080端口。集外用户通过集中任意节点主机IC+端口号访问其服务,如图3所示。其中Nyinx 为校园网反向代理,为用户访问JumpSovcr的域名实现转发。用户把JumpSovcr作为跳板,实现对集内部逻辑主机的操控。[K8s集空间\节点主机1\节点主机2\节点主机N' 192.168.9.1192.168.9.2…192.168.9.X
部署控制器~------|I:作负载1][匚作负载2|
图3用户访问容器服务方式
2.3访问容器中的图形界面
在生产环境中,使用容器虚拟化技术部署的应用一般是无图形用户接口(GUI)的后台服务。但在实验环境中,可能需要以GUI交互方式完成某些实验。Dochce引擎的宿主机OS—般为Linup,可通过共享主机的XI1图形界面服务来解决GUI交互问题。在容器中安装远程控制软件VNC⑺或RDP,可利用JumpSovcr实现对容器的GUI操作。
3平台测试
以一个54人的教学班级需求为例,在该平台上搭建Hadoop分布式集的实验环境并设计相关测试实验并进行性能分析。在容器集环境中部署Hadoop,要求每个虚拟节点主机名称与IC地址都唯一,且要与集配置文件一致。这给批量部署多个Hadoop集带来很大困难。目前较少有文献介绍在此环境的具体部署方法,多数仅在单节点主机中实现。本平台通过REST API接口运行批量部署脚本来实现。3.1测试环境
本测试环境采用5台3种型号的服务器作为宿主机,网络链路为万兆,利用epherer平台虚拟出多个不同硬件性能的Lnup VM,并构建具有2个Mastere etch与Control角)节点、3个WorUcr节点的集。Mstcr与WorUer节点角功能分开部署,这是基于安全考虑,防止M/W、节点异常导致集瘫痪。集软件Rancher的版本为2.4.2,K8s的版本为1.5.4,VM OS均为Cent/S7,Docher版本为5.9.9。具体环境配置参见表5
表1测试环境配置
设备名称主要参数数量用途
服务器a2个Intel E5-2634CPU,58GB/DDR32部署Rancher、HarUor、NFS、Master、、Master2服务器b4个Intel E7-4820CPU,256GB/DDR32部署WorUerl、WorUer2
服务器c2个Intel Gold5113CPU,58GB/DDR41部署WoreerO
网络存储8块1.8T SSD/RAID51存放VM
VM a8核CPU,5GB2Master、、Master2
VM b24核CPU,48GB3WorOer1、WorUem、WorUer3
VM c5核CPU,5GB1Rancker
VM d4核CPU,5GB2Harboe、NFS
重构基础镜像(github^lyinobo/dadoop-c/is W、-docher C用于Hloop集实验环境,该镜像的Hadoop版本为3.2.0。增加或者修改的配置内容如下:1)增加Python运行环境,这是由于JumpServer
会使用ansOle推送系统用户到虚拟主机资产中;(2)新增部署容器时的环境变量Hos)_No,实现为不同的学生分配不同的虚拟容器主机名;(3)修改entrypoin).sh脚本代码,为Hloop集相关配置文件中的主机名编号,并修改mot登录密码,便于JumpServer用SSH方式登录;(4)修改hadoop-ene.sh配置文件,添加限制Hloop内存的使用峰值;(5)调用Rancher提供的REST API,批量创建54个Hloop集(1个master,
第3期游贵荣等:轻量级大数据实验平台设计与实现33
2个s I wo)。
3.0测试结果
因Raccher部署与创建K3s集,需联网下载相关组件的镜像,此过程约需几十分钟。以下测试结果是在Rahchvf与K3s集已正常运行的情况下得到的。
(1)容器与Hadoop集服务的启动时间。重构后Hahoop镜像大小为1.93GB,当在某个节点主机上
初次部署该容器时,须先从HarUof下载镜像,部署单个容器的时间稍长,耗时57-72s o当节点主机中已经存在此镜像后,部署50个Hadoop集(3个容器/集),所花时间不到2mis,见表9o启动Hadoop集服务花费时间约22s;运行wordcouht示
表2批量部署Hadep集所需的时间部署容器数量/个部署时间/( 3023
5043
hadoop分布式集搭建13272
例任务约52S o
(2)模拟节点故障,容器重建所需的时间。将集中一个WorUvf节点非正常关机,该节点上运行的42个Hadoop相关的容器,会自动在其他节点上重新部署及启动,所花时间约5min。
(()Hadoop集服务对主机性能的消耗。实验利用JumpSemvf下发批量命令功能启动57个Hadoop集,并运行worUcouht任务示例,模拟学生正常上机实验过程。此过程中,每个节点上运行的Pod数量、CPU与内存的利用率峰值见表3o
由表3可知,I〈8s集的2个主控节点对CPU
表3K8s集节点性能消耗峰值
节点名称Pob数量/个CPU利用率/%内存利用率/% MasterO5517 MasterU41110 WorUerO400975 WorUerU504090 WorUera571294
与内存的使用率较低,而3个WorUer节点的内存使用率峰值平均为86.33%,相当于50个Hadoop集使用了约124GB内存,平均每个Hadoop集需要消耗约2.5GB内存。另外,K8s集会根据节点的硬件性能指标分配不同的工作负载,性能最好的WorUerO分配工作负载最多。
综上,本实验平台部署效率高,启动速度快;批量部署与部分自动化维护功能才需二次开发,总体实施成本较低,可扩展性强。建议在实际应用中将K3s集直接部署在物理服务器上,并根据学生人数按需配置集服务器的内存容量,以保证实验能流畅进行。
4 结语
轻量级大数据实验平台符合低成本、高标准培养大数据专业人才的需要。在现有云计算基础设施上利用开源技术构建轻量级容器集,实现平台的快速集中部署与客户端软件零安装。相关实验测试结果表明,此平台集中管理和部署实验环境效率较高,部署50个学生使用的3节点Hadoop集不到2min,单节点故障可在5mo内自行恢复。因此,本文所提出的解决方案能够满足日常教学与实验需要,建设成本相对低,性能稳定且可扩展性强,值得推广。
[参考文献]
J]应毅,刘亚军,俞琰.利用Docker容器技术构建大数据实验室[J].实验室研究与探索,2018(2):264-268.
[2]谷瑞军.基于Docker容器的轻量级大数据实验平台构建研究[J].金陵科技学院学报,2019(4):-5.
[3]王建民,王晨,刘英博,等.大数据系统软件创新平台与生态建设[J]•大数据,2018(5):104-112.
[4]李宁,曾铮.开源技术一一大学计算机专业的一门重要课程[J].计算机教育,2010(3):117-120.
J]罗利民.从Docker到KuUerneWs入门与实战[M].北京:清华大学出版社,2019.
[6]OU Z,SONG M,HWANG Z H,at aU N closU storaha mahy?Pemormahce comparison of redresenw/ve IP-based storaha
systemsJ].Josruai of Systems and Software,2013,133:206-221.
[2]MINTAL V,HUNG L H,KESWAN【J,at aU GUIdock-VNC:using a hraphicai deshtoy sharing system to provide a browser
-based interface foo conwinerized software J].Gigwciencc,2017(4):1-6.(下转第32页)
第3期吴镇平:提高驾驶舒适性和稳定性的主动式前转向控制策略研究39
〃IEEE Conference and Expo TranshorW/on ElecWi/caWon Asia-Pacific(IBEC Asia-Pacific).IBEE,201
4::-5.
[8]刃手目.Yaw Stapi/y Controi ei a Vedicle by Gear Ratio Change and Active Steering[J].Joxrsai of the Korean Society of Me-
chauicai Technolocu,2013(3):325-3306
[9]SALAANI M K,HEYDINGERGJ,GRYGIERP A.Experimental Steering Feel Pebormanco Measuresf J]3SAE Wausactioxs,
2004(6):765-6773
Research on Active Froni Steering Control Strateyy foa
Improving Driving Comfori and Stabney
WU Zhex/ing
(Deqartmext vf Automobiic Engi/eebng,Zhangzhou Institute vf Technoncu,Zhangzhou363202,Chi/a)
Abstroct:In this paper,a new vebaUle steering ratio active front steering coxWoller is proyosed to/戸/妊
vedicle staPintp and driver comfort.The re/tionship between steering sensitivity and yaw eain rate is stuUied,and the three-(^1/6X810X01diaaram between steering wheei angle and longitudinai velocity is eswUlished by using this characteristic3On this basis,the mobei predictive controi method is used to design the active front steering coxWoher.The oytimai soluWox of the controller is determined under the constraint condi/oxs of the actuator of the active front steering coxWoher.Commerciai software Carkim and MATLAB/himulind are used to vebp the simUa/ox.The reselts show that the proposed active front steering coxWoher based ox3D-VSR map can reduce the steering burken of drivers at low speed,improve driving staPility at high speed,and provide fast steering response aUi/p in e-meraency manexvers.
Key wonio:variakle steering ratio,driving comfort;steering sensitivity;yaw eain rate
(责任编辑:黄容)
(上接第33页)
Desinn and Implementation oU Lightweighi Bin Dai Experimeutal Platform
YOU Guiroug,HUANG Qinglan,LE Ningii
((nformatiox Techdolocy Cextes,Fujiau Busioess University,Fuzhou350212,Chi/a)
Abstroct:Coxsidebne the problems of high cost,low overali deployment ePiciench and poor scalakilim in the existine big data experiment p/Worm,this paper proyoses an end-to-end solution ox quichly building the lightweight big data experimenwi p/Worm with the technolocy of conWiner viOua/zatiox and shch open source components as Docher,KuUernetes,Rancher and JumpServer etc.The paper alse describes the relevent technolopies used in the p/Worm,inc/Uing the conWiner orchesWatiox,persistence of conWiner data,access to the eraphicai intebace in the container,the services provided by the container cluster for the users'access,and the implemenWCox of batch deployment of big data experimentai environment by simple secondare develoyment as wed. According to the expebmentai tests,the p/Worm is characterized by low coxsWuctiox cost,high deployment efficiench and strong scalakility,which can meet the needs of Uaily teaching and expebmenW.And/has better appncatiox va/e and popu/nzatiox significance.
Keywords:virtualiza/ox;Docher container;KuUernetes;Rancher;HaPooy cluster
(责任编辑:黄容)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论