YARN与MapReduce的配置与使用

教程目录

0x00 教程内容
  1. YARN的初始化配置
  2. 使用YARN跑第一个例子
  3. 如何找到官网例子
0x01 YARN的初始化配置
1. 配置 yarn-site.xml

a. 进入hadoop配置文件目录
cd /home/hadoop-sny/bigdata/hadoop-2.7.5/etc/hadoop
b. 添加配置信息:
vi vi yarn-site.xml

<property>
	<name>yarn.resourcemanager.hostname</name>
	<value>master</value>
	<description>表示ResourceManager安装的主机</description>
</property>
<property>
	<name>yarn.resourcemanager.address</name>
	<value>master:8032</value>
	<description>表示ResourceManager监听的端口</description>
</property>
<property>
	<name>yarn.nodemanager.local-dirs</name>
	<value>/home/hadoop-sny/bigdata/yarn/local-dir1,/home/hadoop-sny/bigdata/yarn/local-dir2</value>
	<description>表示nodeManager中间数据存放的地方</description>
</property>
<property>
	<name>yarn.nodemanager.resource.memory-mb</name>
	<value>1630</value>
	<description>表示这个NodeManager管理的内存大小</description>
</property>
<property>
	<name>yarn.nodemanager.resource.cpu-vcores</name>
	<value>2</value>
	<description>表示这个NodeManager管理的cpu个数</description>
</property>
2. 同步配置文件到slave1、slave2节点

a. 执行下面的命令,使得slave1和slave2的配置同步master上的配置:

scp yarn-site.xml hadoop-sny@slave1:~/bigdata/hadoop-2.7.5/etc/hadoop/
scp yarn-site.xml hadoop-sny@slave2:~/bigdata/hadoop-2.7.5/etc/hadoop/

YARN与MapReduce的配置与使用
b. 在master创建配置nodeManager中间数据存放的地方,并同步到slave1、slave2(此步骤可以省略,其实目录也会自己创建)

mkdir -p /home/hadoop-sny/bigdata/yarn/local-dir1
mkdir -p /home/hadoop-sny/bigdata/yarn/local-dir2
scp -r ~/bigdata/yarn/local-dir1 ~/bigdata/yarn/local-dir2 hadoop-sny@slave1:~/bigdata/
scp -r ~/bigdata/yarn/local-dir1 ~/bigdata/yarn/local-dir2 hadoop-sny@slave2:~/bigdata/
3. 校验YARN

a. 启动yarn
start-yarn.sh
b. 打开Windows的浏览器
http://master:8088

注意:
我在Windows系统里配置了域名映射,所以可以使用master
可以看到界面,说明配置成功,如不配域名映射,则使用ip也可以
YARN与MapReduce的配置与使用

0x02 使用YARN跑第一个例子
1. 配置YARN

a. 停止yarn并且在yarn-site.xml中增加配置:
stop-yarn.sh
vi yarn-site.xml

<property>
	<name>yarn.nodemanager.aux-services</name>
	<value>mapreduce_shuffle</value>
	<description>为map reduce应用打开shuffle 服务</description>
</property>
2. 配置MapReduce

a. 复制一份模板文件处理并在mapred-site.xml中增加配置
cp mapred-site.xml.template mapred-site.xml
vi mapred-site.xml

<property>
	<name>mapreduce.framework.name</name>
	<value>yarn</value>
	<description>向yarn申请资源</description>
</property>
3. 同步配置文件与目录到slave1、slave2节点

a. 在master上执行

scp yarn-site.xml mapred-site.xml hadoop-sny@slave1:~/bigdata/hadoop-2.7.5/etc/hadoop
scp yarn-site.xml mapred-site.xml hadoop-sny@slave2:~/bigdata/hadoop-2.7.5/etc/hadoop

YARN与MapReduce的配置与使用
b. 启动YARN
start-yarn.sh

4. 验证MapReduce是否配置成功

a. 创建一个/user/hadoop-sny/input文件夹
hadoop fs -mkdir -p /user/hadoop-sny/input
YARN与MapReduce的配置与使用
b. 上传hadoop配置文件的文件夹内容到此目录(用于测试而已)
hadoop fs -put ~/bigdata/hadoop-2.7.5/etc/hadoop /user/hadoop-sny/input
YARN与MapReduce的配置与使用
c. 执行hadoop内置的jar包:

hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.5.jar grep /user/hadoop-sny/input/hadoop /user/hadoop-sny/output 'dfs[a-z.]+'

d. 执行完后查看统计结果:
hadoop fs -cat /user/hadoop-sny/output/*
YARN与MapReduce的配置与使用
如执行多次,可使用下面语句先删除output文件夹:
hadoop fs -rm -r -f /user/hadoop-sny/output

0x03 如何找到官网例子
1. 链接路径

a. 打开github,然后搜索:hadoop,按照路径点进去即可

PS:官网内置例子链接
https://github.com/apache/hadoop/tree/trunk/hadoop-mapreduce-project/hadoop-mapreduce-examples/src/main/java/org/apache/hadoop/examples
YARN与MapReduce的配置与使用
b. 可以自行查看相关的例子学习

0xFF 总结
  1. 本教程配置了YARN,配置了MapReduce,注意理解配置里面的内容,都有注释,可以好好看看,留意一下配置的内存大小以及CPU核数,有利于后期深入探究YARN的核心原理。
  2. 本教程最后还给出了Hadoop官方例子的路径,希望大家在学习的时候,能够结合着官网深入理解,要知道是这么做,知道在做什么。

作者简介:邵奈一
大学大数据讲师、大学市场洞察者、专栏编辑
公众号、微博、CSDN邵奈一

邵奈一的技术博客导航入口

上一篇:HDFS恢复非HA状态


下一篇:HDFS的高可用性HA配置实战