微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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/

在这里插入图片描述

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也可以

在这里插入图片描述

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

在这里插入图片描述

b. 启动YARN
start-yarn.sh

4. 验证MapReduce是否配置成功

a. 创建一个/user/hadoop-sny/input文件
hadoop fs -mkdir -p /user/hadoop-sny/input

在这里插入图片描述

b. 上传hadoop配置文件文件内容到此目录(用于测试而已)
hadoop fs -put ~/bigdata/hadoop-2.7.5/etc/hadoop /user/hadoop-sny/input

在这里插入图片描述

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/*

在这里插入图片描述


如执行多次,可使用下面语句先删除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

在这里插入图片描述


b. 可以自行查看相关的例子学习

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

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

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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐