前面配置的了HDFS 2.x,现在在这个基础上搭建YARN、hdfs交给yarn管理
新节点图
NN DN ZK JN ZKFC RS NM
node1 1 1 1
node2 1 1 1 1 1 1
node3 1 1 1 1 1
node4 1 1 1 1
如图在node03、node04上配置ResourceManager,并依靠zookeeper搭建高可用
NodeManager会在DataNode上自动生成不需手动配置。
下面是yarn的配置
两个文件yarn-site.xml、mapred-site.xml
1. 配置yarn.site.xml
<configuration>
<!--配置yarn集群id,不能和hdfs集群id相同-->
<property>
<name>yarn.resourcemanager.cluster-id</name>
<value>yarn-cluster</value>
</property>
<!--配置resourcemanager 别名-->
<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>
<!--配置与zookeeper的连接地址-->
<property>
<name>yarn.resourcemanager.zk-address</name>
<value>node02:2181,node03:2181,node04:2181</value>
</property>
<!-- NodeManager上运行的附属服务。需配置成mapreduce_shuffle,才可运行MapReduce程序) -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!--开启resourcemanagerHA,默认为false-->
<property>
<name>yarn.resourcemanager.ha.enabled</name>
<value>true</value>
</property>
</configuration>
2. 配置mapred.site.xml
<configuration>
<!--指定mapreduce运行在yarn框架上-->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<!-- 是否允许跨平台提交程序 -->
<property>
<name>mapreduce.app-submission.cross-platform</name>
<value>true</value>
</property>
</configuration>
HDFS+YARN启动
zk节点 node01、node02、node03分别运行
zkServer.sh start
zkServer.sh status查看是否成功启动
node01上运行
cd /usr/local/hadoop/sbin/
./start-dfs.sh
后会启动JNS、NN、DN、ZKFC、NM
resourceManager需要手动启动
node03运行
./start-yarn.sh
node04运行
./yarn-daemon.sh start resourcemanager
要查看history,还需要启动historyserver,在node01上运行
./mr-jobhistory-daemon.sh start historyserver
测试
运行jps是否都启动了
web网页查看