Hadoop之搭建MapReduce高可用环境

前提是Hadoop的HDFS高可用集群已经搭建完毕。在搭建2.x版本的高可用Hadoop集群博客中有详细介绍,本篇博客主要介绍搭建MapReduce高可用。

一 准备条件说明

四个虚拟机: node1,node2,node3,node4。NameNode1和NameNode2分别是node1,node2,DataNode有三个,分别是node2,node3,node4
搭建MapReduce时,担任resourcemanager任务的虚拟机为node3,node4,每个DataNode上都要开启一个nodemanager

二 开始搭建

第一步,配置文件的修改

进入node1虚拟机中
进入hadoop的配置文件目录下,将mapred-site.xml.template重命名为 mapred-site.xml 。使用下面命令

  mv mapred-site.xml.template mapred-site.xml  

编辑mapred-site.xml
在中加入下面内容

<property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
</property>

配置yarn-site.xml文件,在中写入下面内容

<property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
</property>

<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> #resourcemanager的标识符,用于下面的配置
 </property>
 <property>
   <name>yarn.resourcemanager.hostname.rm1</name>
   <value>node3</value> #配置担任resourcemanager的虚拟机
 </property>
 <property>
   <name>yarn.resourcemanager.hostname.rm2</name>
   <value>node4</value> #配置担任resourcemanager的虚拟机
 </property>
 <property>
   <name>yarn.resourcemanager.zk-address</name>
   <value>node2:2181,node3:2181,node4:2181</value> #zookeeper搭建在那些虚拟机上
 </property> 

分发两个文件到:2,3,4节点
scp maprexxxx yarn-xxx node2:pwd
scp maprexxxx yarn-xxx node3:pwd
scp maprexxxx yarn-xxx node4:pwd

两个担任resourcemanager的节点之间互相免密钥

3节点 .ssh 目录下: ssh-keygen -t dsa -P ‘’ -f ./id_dsa //生成免密钥文件
cat ~id_dsa.pub >> authorized_keys //写入authorized_keys 文件中

	    scp id_dsa.pub root@node4:`pwd`/node3.pub //分发给node4节点,并修改免密钥文件为node3.pub

4节点 .ssh 目录下 :
cat node08.pub >> authorized_keys
ssh-keygen -t dsa -P ‘’ -f ./id_dsa
cat ~id_dsa.pub >> authorized_keys
scp id_dsa.pub root@node3:pwd/node4.pub

3节点 .ssh 目录下:
cat node4.pub >> authorized_keys

到这里环境配置搭建完成,下面进行启动
1.启动zookeeper : zkServler.sh start 通过共享命令一起启动所有的zookeeper节点
2.启动hdfs,命令如下:start-dfs.sh ,如果NameNode1和NameNode2没有启动,需要在node1和node2中分别手动启动
3.启动nodemanager: start-yarn.sh
4:在node3和node4中分别执行脚本:yarn-daemon.sh start resourcemanager启动resourcemanager

注意:除个别情况需要在单个节点运行脚本外,上面启动前三步都在一个NameNode中进行,如NameNode2没有启动,需要在node1和node2中分别手动启动。否则在启动hdfs的NameNode节点中运行启动前三步即可

UI访问: resourcemanager节点IP : 8088可以访问
停止:
node1: stop-dfs.sh
node1: stop-yarn.sh (停止nodemanager)
node3,node4: yarn-daemon.sh stop resourcemanager (停止resourcemanager)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值