mapred-site.xml
和yarn-site.xml
两个配置文件即可,这两个文件与前文提到过的三个配置文件都在$HADOOPHOME/etc/hadoop
文件夹下。
1.mapred-site.xml
配置
进入相应的文件夹下编辑mapred-site.xml
文件,添加mapreduce.framework
属性即可。
![配置文件所在位置 640?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/c74f457206b972d0feaaae3e0369b001.jpeg)
![mapred-site.xml的配置 640?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/6b2e04efdf1b5392fe582c33773409bb.png)
2.yarn-site.xml配置
![yarn-site.xml的配置 640?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/e1602170d7615651366c56649f65a28e.png)
同样的,在yarn-site.xml
中添加nodemanager的服务即可。
3.启动yarn相关进程并验证是否启动成功
![启动yarn相关进程 640?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/a885617811af3ba739918b4560902c70.jpeg)
./start-yarn.sh #在sbin目录下执行该命令可以启动yarn
# 注意在这之前要先启动HDFS,从控制台的输出中可以看出,
# 启动了resourcemanager和nodemanager进程,jps验证也输出了相应的进程号。
# 启动之后可以通过访问http://localhost:8088来访问yarn的管理界面。
./stop-yarn.sh #停止yarn相关进程
4.在yarn上运行hadoop示例程序
![任务正在运行:RUNNING 640?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/1d95df547a88acb1b478975fe64666c3.jpeg)
![任务运行结束:FINISHED 640?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/b3af4f25f98bfe108ec19f1bf50806ee.jpeg)
与前文一样,我们依然运行hadoop自带jar包例子中计算PI的程序。此处有几点需要说明。
1)web页面可以随时跟踪任务的执行状态,刚提交时是running,执行结束后会变成finished。如上图所示。
2)配置了yarn之后,会在计算时链接yarn的服务。从控制台输出中我们可以看到连接了ResourceManger。ResourceManager就是yarn的资源管理器。
![配置yarn之后的计算PI日志 640?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/e950a4774a4cb8e063751025b768916b.jpeg)
3)对比没有配置yarn之前的控制台上输出。可以看出配置yarn之后的日志更简洁。配置之前的(部分)日志见下图,配置之后的(部分)日志见上图。配置之前日志信息告诉我们,执行的是一个MapReduce过程,有map task,reduce task等。而配置之后,只有mapreduce job。可以理解为是运行在yarn之上的一个map reduce作业。配置之后运行时间虽然不一定快,但yarn的统一管理对整个集群来讲是更优化的。
![配置yarn之前的计算PI日志 640?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/c7d292f6c4c4f2b9f0aec5a264b4e1b1.jpeg)
以上就是hadoop中关于yarn的配置和思考,欢迎大家留言交流~