大数据之脚踏实地学08--搭建Hadoop集群【2】

还没关注?

640?wx_fmt=png

快动动手指!

前言

在《大数据之脚踏实地学07--搭建Hadoop集群【1】》中,讲解的是虚拟机的配置(包括网络设置、主机名修改和克隆等),文中我们在VMware中虚拟了3台计算机,1台用作主节点(master),2台用作从节点(slaves)。本文将继续分享有关Hadoop环境的安装和配置(包括HDFS系统、Map-Reduce计算框架已经Yarn调度器)。


安装Java(所有虚拟机)

由于Hadoop的开发和运行都是基于Java环境的,所以需要在四台虚拟机中安装Java。安装过程很简单,具体内容可以查看《大数据之脚踏实地学04--在Linux系统中安装Java》一文。如果你还没有安装,可以根据下面的流程进行安装:

解压Java的安装包

进入到Java软件的所在目录(我的目录是/opt/SoftWare),然后利用tar命令对压缩文件进行解压缩,命令如下:

tar -xzvf jdk-8u181-linux-x64.tar.gz

重命名安装目录

mv jdk1.8.0_181/ java

640?wx_fmt=png

配置环境变量

vim /etc/profile

640?wx_fmt=png


安装Hadoop(所有虚拟机)

安装好Java之后,便可以在所有的虚拟机安装Hadoop软件了,安装过程与安装Java类似,也是解压、重命名和配置环境变量。

解压

tar -zxf hadoop-2.9.1.tar.gz

重命名安装目录

mv hadoop-2.9.1 hadoop

配置环境变量

vim /etc/profile

640?wx_fmt=png

刷新环境变量

source /etc/profile


配置Hadoop(所有虚拟机)

安装好Hadoop之后,是无法直接使用的,还需要对Hadoop的几个核心文件作配置,这些配置文件都在/opt/SoftWare/hadoop/etc/hadoop/目录内。

640?wx_fmt=png

第一个需要配置的文件是hadoop-env.sh,它是用来指定Hadoop的运行环境(即Java的安装目录),通过vim hadoop-env.sh命令进行内容的修改,具体如下:

640?wx_fmt=png


第二个需要配置的文件是core-site.xml,它是用来指定HDFS系统的BOSS是谁(即NameNode的所在的机器),通过vim core-site.xml命令进行内容的修改,具体如下:

640?wx_fmt=png

在配置文件中添加了两项内容,一个是fs.defaultFS,它是指定HDFS的BOSS;另一个是hadoop.tmp.dir,用于指定Hadoop缓存数据的目录(当然该内容也可以不指定,缺点是重启Hadoop后原先的元数据就会被清除掉)。由于指定的缓存目录在Linux系统中并没有,故需要手工创建该目录:mkdir -p /opt/data/tmp


第三个需要配置的是hdfs-site.xml,用于指定数据块的副本数量,通过hdfs-site.xml命令进行内容的修改,具体如下:

640?wx_fmt=png

由于之前架构的虚拟机只有两台用于从节点,故这里的dfs.replication需设置为2(默认该参数值为3)。


到目前为止,Hadoop的HDFS系统就搭建好了,另外还需要搭建Hadoop的Map-Reduce运算环境和Yarn调度器。搭建的过程,仍然是文件的配置过程,对于Map-Reduce的搭建,需要配置mapred-site.xml文件;Yarn的搭建,需要配置yarn-site.xml文件。同样,这样文件在所有节点都需要配置。

首先配置mapred-site.xml文件(默认mapred-site.xml文件是不存在的,读者可以将mapred-site.xml.template文件拷贝或重命名为mapred-site.xml文件),它用来指定Map-Reduce的运算过程中所需的调度器,即Yarn。

640?wx_fmt=png


其次,还需要对Yarn进行配置,即yarn-site.xml文件。主要增加三项内容,其中yarn.resourcemanager.hostname指定Resourcemanager(资源管理器)运行在哪个节点上;yarn.nodemanager.aux-services则用来配置Yarn的默认混洗方式。

640?wx_fmt=png


最后,master(主节点)与slaves(从节点)之间应该是互相协作关系,所以还需要配置slaves文件,目的是让主节点找到自己控制的从节点。配置如下:vim slaves

640?wx_fmt=png


配置SSH免密登录(仅master虚拟机)

OK,Hadoop的重要配置项就结束了,接下来要做的就是测试Hadoop的配置是否成功。在测试之前必须做SSH免密登录,因为在主节点(master)启动从节点的DataNode时,是需要从节点的登录密码的。很显然,如果从节点有成千上万个,每一个节点都需要输入登录密码,那将是一件非常痛苦的事。所以,配置了SSH免密登录后,主节点在访问从节点时,就无需输入密码了。具体步骤如下:

  • 切换到root用户的家目录:cd ~

  • 进入到.ssh隐藏目录

  • 执行ssh-keygen -t rsa,一路Enter键,生成公钥和私钥

640?wx_fmt=png


  • 分别将公钥复制给master slave1和slave2三台机器,代码如下:

    ssh-copy-id master

    ssh-copy-id slave1

    ssh-copy-id slave2


测试Hadoop集群

  • 格式化hdfs:hdfs namenode -format

  • 启动dfs系统:start-dfs.sh

  • 启动yarn:start-yarn.sh

640?wx_fmt=png

如果你的电脑也出现上图的结果,即主节点(master机器)出现NameNode、SecondaryNameNode和ResourceManager;从节点(slave1机器和slave2机器)出现DataNode和NodeManager,则说明你也成功安装了Hadoop集群。


最后利用Hadoop自带的jar包,做一个词频统计,测试过程如下:

  • 新建test.txt文件,用作词频统计的对象:vim /root/test.txt

640?wx_fmt=png

  • 将该文件上传至hdfs系统中:hadoop fs -put /root/test.txt /

  • 在Web页面查看数据状况:http://192.168.8.100:50070

640?wx_fmt=png

  • 开始运算test.txt文件内的词频:

hadoop jar /opt/SoftWare/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.9.1.jar wordcount /test.txt /out

  • 查看Web的效果:http://192.168.8.100:8088

640?wx_fmt=png

  • 检查输出结果:hadoop fs -cat /out/part-r-00000

640?wx_fmt=png


结语

本期的内容就介绍到这里,如果你有任何问题,欢迎在公众号的留言区域表达你的疑问。同时,也欢迎各位朋友继续转发与分享文中的内容,让更多的人学习和进步。


搭建Hadoop的文档及应用软件下载地址:

链接:https://pan.baidu.com/s/1ZbpaXsS-ge0y6HxIDx5U0w 

提取码:ecwh 


每天进步一点点:数据分析1480

640?wx_fmt=png

长按扫码关注我

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Sim1480

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值