hadoop学习笔记(九):mr2HA高可用环境搭建及处步使用

时间:2023-03-09 13:28:57
hadoop学习笔记(九):mr2HA高可用环境搭建及处步使用

本文原创,如需转载,请注明原文链接和作者

所用到的命令的总结:

yarn:启动start-yarn.sh   停止stop-yarn.sh

zk :zkServer.start ;:zkServer.stop;

启动hdfs  : start-dfs.sh   停止:stop-dfs.sh

当然可以需要在zk集群已经跑起来的情况下在头结点上用start-all.sh命令去启动整个集群,

这个命令会启动的进程如下所示

hadoop学习笔记(九):mr2HA高可用环境搭建及处步使用

之后还需要两个命令去启动两个yarn的resource manager进程 :yarn-daemon.sh start resourcemanager

hadoop学习笔记(九):mr2HA高可用环境搭建及处步使用

1、基本配置

现结点的配置情况

hadoop学习笔记(九):mr2HA高可用环境搭建及处步使用

1、单节点的yarn管理的配置

需要配置mapread-site.xml

Configure parameters as follows:
etc/hadoop/mapred-site.xml:
#mapread-site.xml

<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
etc/hadoop/yarn-site.xml:
#和yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>

2、配置HA高可用中的yarn管理

需要配置的是yarn-site.xml文件

Here is the sample of minimal setup for RM failover.
<property>
<name>yarn.resourcemanager.ha.enabled</name>
<value>true</value>
</property>
<property>
<name>yarn.resourcemanager.cluster-id</name>
<value>cluster1</value>
</property>
<property>
<name>yarn.resourcemanager.ha.rm-ids</name>
<value>rm1,rm2</value>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm1</name>
<value>node03</value>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm2</name>
<value>node04</value>
</property>
<property>
<name>yarn.resourcemanager.zk-address</name>
<value>node02:,node03:,node04:</value>
</property>

3、具体的自己在搭建的过程中将那几个结点当做resourcemanager所在的结点,则需要将这两个结点互相的分发秘钥,实现互相的免秘钥登录

node03

[root@node03 ~]# ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

自己实现对自己的免秘钥登录

[root@node03 ~]# cd .ssh/
[root@node03 .ssh]# ll
总用量
-rw-r--r-- root root 9月 : authorized_keys
-rw------- root root 10月 : id_dsa
-rw-r--r-- root root 10月 : id_dsa.pub
-rw-r--r-- root root 9月 : known_hosts
-rw-r--r-- root root 9月 : node01.pub
[root@node03 .ssh]# cat id_dsa.pub >> authorized_keys

在node03将秘钥发给node04结点并改名

[root@node03 .ssh]# scp id_dsa.pub node04:`pwd`/node03.pub

之后在node中执行追加命令

[root@node04 .ssh]# cat node03.pub >> authorized_keys 

node04进行同样的和node03一样的命令且将自己的秘钥文件发给Node03并在03上将node04的秘钥文件追加到自己的验证文件中

4、启动集群步骤

概括:

启动:node01:

 zookeeper
hdfs (注意,有一个脚本不要用,start-all)start-dfs.sh
如果nn 和 nn2没有启动,需要在node06,node07分别手动启动:
hadoop-daemon.sh start namenode
start-yarn.sh (启动nodemanager)
在03,04节点分别执行脚本: yarn-daemon.sh start resourcemanager UI访问: ip: 停止:
node01: stop-dfs.sh
node01: stop-yarn.sh (停止nodemanager)
node03,node04: yarn-daemon.sh stop resourcemanager (停止resourcemanager)

hadoop学习笔记(九):mr2HA高可用环境搭建及处步使用

   先启动zk集群;command:   zkServer.sh start

    因为mr是在hdfs的基础是哪个的,所以在主结点上先启动hdfs 命令:start-dfs.sh

hdfs集群启动:

hadoop学习笔记(九):mr2HA高可用环境搭建及处步使用

在主结点上启动Node Manager,这个进程会分别的在DataNode的结点上启动

[root@node01 hadoop]# start-yarn.sh

hadoop学习笔记(九):mr2HA高可用环境搭建及处步使用

注意到这里并没有启动,需要到两个配置resourcemanager的结点去分别的去启动它

[root@node03 .ssh]# yarn-daemon.sh start resourcemanager
starting resourcemanager, logging to /opt/sxt/hadoop-2.6./logs/yarn-root-resourcemanager-node03.out
[root@node04 .ssh]# yarn-daemon.sh start resourcemanager
starting resourcemanager, logging to /opt/sxt/hadoop-2.6./logs/yarn-root-resourcemanager-node04.out

之后可以通过ss -nal命令查看端口 8088是yarn和浏览器的默认通信端口,

而3888是zk集群选举机制所用的端口,2888是zk集群内部通信所用的端口,2181是服务器和客户单通信的端口

hadoop学习笔记(九):mr2HA高可用环境搭建及处步使用

浏览器访问yarn

hadoop学习笔记(九):mr2HA高可用环境搭建及处步使用

2、 运用它的计算功能:

先自己创建以及上传一个文件

[root@node01 hadoop-2.6.]# for i in `seq `;do echo "hello sxt $i"  >> test.txt;done
[root@node01 software]# hdfs dfs -D dfs.blocksize= -put test.txt

hadoop学习笔记(九):mr2HA高可用环境搭建及处步使用

具体的运用计算功能的过程

找到自己的hadoop安装路径

cd  /opt/sxt/hadoop-2.6./share/hadoop/mapreduce

hadoop学习笔记(九):mr2HA高可用环境搭建及处步使用

对test.txt进行单词统计

[root@node01 mapreduce]# hadoop jar hadoop-mapreduce-examples-2.6..jar  wordcount /test.txt /wordcount

可以看滚动条的计算进度过程

hadoop学习笔记(九):mr2HA高可用环境搭建及处步使用

后台的linux命令行中的执行过程

hadoop学习笔记(九):mr2HA高可用环境搭建及处步使用

先执行map 作业在执行 reduce作业

浏览器端观察计算已经完成

hadoop学习笔记(九):mr2HA高可用环境搭建及处步使用

hadoop学习笔记(九):mr2HA高可用环境搭建及处步使用

通过命令行看完成的现象

hadoop学习笔记(九):mr2HA高可用环境搭建及处步使用

hadoop学习笔记(九):mr2HA高可用环境搭建及处步使用

 这种状态代表正常的执行完毕了计算,没有出现语法问题,但是这并不代表计算的结果是正确的

等待之心完毕之后,可以在命令行下通过命令

查看hdfs中的文件
hdfs dfs -cat /文件 查看统计的结果
hdfs dfs -cat /wordcount/part-r-

结果

hadoop学习笔记(九):mr2HA高可用环境搭建及处步使用

完成最基本的mr的计算的功能!!