yarn的高可用的搭建只需要更改Hadoop包的基本配置文件即可。
以下是角色的分配
… | Active NameNode | Standby NameNode | DataNode | Zookeeper | ZKFC | JournalNode | ResourceManage | NodeManager |
---|---|---|---|---|---|---|---|---|
node01 | √ | - | - | - | √ | √ | √ | |
node02 | - | √ | √ | √ | √ | √ | √ | √ |
node03 | - | - | √ | √ | - | √ | √ | |
node04 | - | - | √ | √ | - | - | √ |
此次搭建是在高可用的完全分布式的基础上操作的。
1.在node01节点上修改mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration
我们可以根据复制模板来自己新建mapred-site.xml文件在进行修改
2.修改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>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm1</name>
<value>node01</value>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm2</name>
<value>node02</value>
</property>
<property>
<name>yarn.resourcemanager.zk-address</name>
<value>node02:2181,node03:2181,node04:2181</value>
</property>
3.关闭所有进程
4.更新node02,03,04节点上的Hadoop包
rm -rf /…(2,3,4节点上Hadoop包的路径)
scp -r hadoop-2.6.5 node02:pwd
scp -r hadoop-2.6.5 node03:pwd
scp -r hadoop-2.6.5 node04:pwd
5.开启zookeeper
在zookeeper包的bin目录下运行:./zkServer.sh start
6.开启所有进程
7.在某个ResourceManager节点上运行
8.在另外一个ResourceManager节点上单独启动
yarn-daemon.sh start resourcemanager