基于ZStack的hadoop集群搭建与分析 下载本文

龙源期刊网 http://www.qikan.com.cn

基于ZStack的hadoop集群搭建与分析

作者:刘顺

来源:《科技资讯》2019年第19期

摘 ;要:如果采用传统的方法来搭建Hadoop集群,那么就将会出现这些问题:传统构建Hadoop集群需要大量物理设备,要容纳如此多的物理设备又需要足够的实验场地。这些物理机的性能得不到充分利用,造成资源浪费,并且一旦物理机集群组建后,如果还需要增加节点,就意味着还需要增加新的物理机,那就需要更大的实验场地,并且还需要一些像集线器、网线、交换机等一系列物理设备,花费也就更多,布置起来也是费时费力。 关键词:ZStack ;hadoop ;大数据 ;集群

中图分类号:TN92 ; 文献标识码:A 文章编号:1672-3791(2019)07(a)-0029-02 笔者主要通过在软件vmware workstation,利用ZStack2.7.0系统镜像安装3台虚拟机,将这3台虚拟机分别用1台虚拟机作为主节点,其余2台虚拟机作为slave节点,并且对这3台虚拟机进行JDK、Hadoop软件安装及环境配置:配置ssh免密登录,配置静态网络能够达到内外网络互相ping通状态,修改相应的配置文件,部署和测试Hadoop单机本地模式、伪分布式模式、完全分布式模式。 1 ;Hadoop环境配置

hadoop安裝配置环境:(1)首先需要1台物理机,然后是3台虚拟机,它们分别为ls-m、ls-c1、ls-c2。(2)软件需要ZStack2.6.0镜像。

Hadoop基础环境部署:(1)修改虚拟机主机名,然后执行bash命令更新。(2)分别下载rsync和ssh。(3)关闭防火墙。(4)关闭selinux安全机制,然后重启虚拟机。(5)添加对应IP地址。(6)java环境部署:①官网下载jdk-10.0.2_linux-x64_bin.tar.gz;②卸载系统自带的openjdk;③修改配置文件,设置JDK的环境变量。(7)Hadoop基础环境部署:①官网下载hadoop-2.7.7.tar.gz;②解压hadoop安装包;③添加Hadoop环境变量,并执行source /etc/profile行命令使更改生效;④执行hadoop version命令查看Hadoop是否安装成功。(8)配置ssh免密登录。

Hadoop单机本地模式部署。Hadoop本地模式无需任何守护进程,只是一个单独的java进程,使用的不是分布式文件系统而是本地文件系统,安装Hadoop后不用任何设置即可运行调试。由于在本机模式下测试和调试MapReduce程序较为方便,因此此模式适宜用在开发阶段。

2 ;Hadoop集群部署

龙源期刊网 http://www.qikan.com.cn

Hadoop伪分布式集群部署:(1)执行cd /home/hadoop/hadoop-2.7.7/命令,进入此目录下;(2)执行 vim etc/hadoop/hadoop-env.sh命令,指定Java路径;(3)执行vim etc/hadoop/core-site.xml命令,在中添加配置HDFS工作端口;(4)执行vim etc/hadoop/hdfs-site.xml命令,添加以下属性,配置冗余备份数量,HDFS namenode服务器地址和端口;(5)执行bin/hdfs namenode–format命令,格式化文件系统;(6)执行sbin/start-dfs.sh 命令启动NameNode和DataNode守护程序;(7)执行jps命令,查看是否已经启动成功;(8)执行vim etc/hadoop/mapred-site.xml命令,配置以伪分布式模式在YARN上运行配置;(9)执行vim etc/hadoop/yarn-site.xml命令,以伪分布式模式在YARN上运行配置。

Hadoop完全分布式集群部署:(1)执行cd /home/hadoop/hadoop-2.7.7/命令,进入/home/hadoop/hadoop-2.7.7/目录;(2)执行vim etc/hadoop/hadoop-env.sh命令,添加JDK路径;(3)执行vim etc/hadoop/yarn-env.sh文件,指定JDK路径;(4)执行vim etc/hadoop/slaves命令,清空原内容,输入slave节点名称;(5)执行vim etc/hadoop/core-site.xml文件, 在中添加配置属性,即HDFS端口和存储路径;(6)执行vim etc/hadoop/hdfs-site.xml文件,在中添加以下配置属性,即添加NameNode地址端口、储存空间名字和汇报日志位置、datanode存储数据块的目录、冗余备份数量、启用webHDFS;(7)执行vim etc/hadoop/mapred-site.xml命令,在中添加配置属性;(8)执行vim etc/hadoop/yarn-site.xml文件,在中添加配置属性,以上步骤在虚拟机上执行,另外2台虚拟机也都需执行以上步骤;(9)在主机上执行bin/hdfs namenode-format命令格式化NameNode,并执行reboot命令重启3台虚拟机;(10)执行命令sbin/start-dfs.sh在虚拟机上启动HDFS;(11)输入jps命令查看JAVA进程,显示以下表示成功;(12)执行bin/hdfs dfsadmin-report查看集群状态,出现以下信息表示hadoop成功运行。 3 ;结语

笔者通过通过Hadoop本地模式、伪分布式模式、完全分布式集群3个模块的测试,一切正常。利用vmware workstation虚拟软件创建虚拟机,建立在虚拟机上的Hadoop的3种模式集群部署能够正常运行,并且能够在上面进行简单的mapreduce或grep实例。此次设计主要从充分利用有限资源出发,在1台物理机上通过虚拟出的3台虚拟机,搭建Hadoop的3种模式,在搭建过程中要注意事先配置好虚拟机的静态网络及3台虚拟机的主机名;配置好免密登录环境;在部署过程中出现问题,可通过查询相关log日志文件找出问题所在;提前做虚拟机快照,以便通过快照恢复无法解决的灾难性问题。

虽然搭建的简易Hadoop集群能够正常运行但是依然存在着不足,3种模式使用了同一台虚拟机会造成实例运行出现问题,虽然使用虚拟机搭建的Hadoop集群能够充分利用资源,并且也不会有在真实物理机上部署会面临的资费昂贵、场地限制、运维人员等一系列的问题,搭建起来也非常简单方便,但是在性能方面和在真实物理机上部署的Hadoop集群相比要差得多,而且一旦资源不够使用,如何添加资源便成了一个棘手的问题。所以建议在学习了解环境中可以使用虚拟机搭建Hadoop集群,但是如果是在企业中应用Hadoop集群,使用真实物理机部署是最好的方法。

龙源期刊网 http://www.qikan.com.cn

参考文献

[1] (美)Thomas ERL,(英)Zaigham Mahmood.计算机科学丛书·云计算:概念、技术与架构[M].北京:机械出版社,2014.

[2] 王良明.云计算通俗讲义[M].北京:电子工业出版社,2017.

[3] (美)Matthew Portnoy,著.虚拟化技术入门实战[M].2版.杜静,敖富江,李博,译.北京:清华大学出版社,2017.