Yarn集群的搭建与测试

一、集群搭建

一、集群规划

主机名 IP地址 NN-1 NN-2 DN ZK ZKFC JNN RS NameNode
node01 192.168.163.128
node02 192.168.163.129
node03 192.168.163.130
node04 192.168.163.131

二、修改配置文件

1、切换至cd /opt/software/hadoop/hadoop-2.6.5/etc/hadoop/目录下,查看文件内容如下:

在这里插入图片描述

2、修改mapred-site.xml.template为mapred-site.xml

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

3、修改mapred-site.xml配置文件

<property>
	<name>mapreduce.framework.name</name>
	<value>yarn</value>
</property>
<-- 跨平台配置 -->
<property>
	<name>mapreduce.app-submission.cross-platform</name>
	<value>true</value>
</property>

4、修改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>

5、将配置好的文件发送给node02,node03,node04节点上

scp -r hadoop-2.6.5 root@node02:`pwd`
scp -r hadoop-2.6.5 root@node03:`pwd`
scp -r hadoop-2.6.5 root@node04:`pwd`

注意:pwd的用法是切换盘符至hadoop-2.6.5所在的目录下

6、在node02、node03、node04上启动zookeeper

zkServer.sh start

若命令无法启动,说明zookeeper的环境变量没有配置,需要在zookeeper的bin目录下启动./zkServer.sh start

7、在node01上启动HDFS和Yarn集群

start-dfs.sh

start-yarn.sh

8、在node02上手动启动备用的ResourceManager

yarn-daemon.sh start resourcemanager

9、访问192.168.163.128页面如下图所示

在这里插入图片描述

访问192.168.163.129页面如下,说明Yarn集群启动成功。

在这里插入图片描述

二、集群测试

测试用例使用MapReduce所提供的WordCount案例,该jar包在

/opt/software/hadoop/hadoop-2.6.5/share/hadoop/mapreduce

运行测试用例:

hadoop jar hadoop-mapreduce-examples-2.6.5.jar wordcount  /input  /output

查看运行结果:

hdfs dfs -cat /output/_SUCCESS

注:
Input:是HDFS文件系统中数据所在的目录
Output:是HDFS文件系统中不存在的目录,MapReduce运行的结果文件会输出到该目录下

三、遇到的问题

Yarn搭建过程中由于只需要修改两个配置文件,因此没有出错。在测试的过程中由于事先创建了output文件夹,导致报错,错误原因是:

org.apache.hadoop.mapred.FileAlreadyExistsException: Output directory hdfs://mycluster/output already exists

删除output文件夹即可解决!

猜你喜欢

转载自blog.csdn.net/qq_42825815/article/details/83822242