教程目录
0x00 教程内容- YARN的初始化配置
- 使用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. 启动yarnstart-yarn.sh
b. 打开Windows的浏览器http://master:8088
注意:
我在Windows系统里配置了域名映射,所以可以使用master
可以看到界面,说明配置成功,如不配域名映射,则使用ip也可以
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. 启动YARNstart-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
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. 可以自行查看相关的例子学习
- 本教程配置了YARN,配置了MapReduce,注意理解配置里面的内容,都有注释,可以好好看看,留意一下配置的内存大小以及CPU核数,有利于后期深入探究YARN的核心原理。
- 本教程最后还给出了Hadoop官方例子的路径,希望大家在学习的时候,能够结合着官网深入理解,要知道是这么做,知道在做什么。
作者简介:邵奈一
大学大数据讲师、大学市场洞察者、专栏编辑
公众号、微博、CSDN:邵奈一