大数据Hadoop之YARN

1.YARN概述

  • 全称:Yet Another Resource Negotiator(另一种资源协调者)资源调度框架

2.YARN架构

  • 1)ResourceManager: RM

    • 整个集群同一时间提供服务的RM只有一个,负责集群资源的统一管理和调度
    • 处理客户端的请求: 提交一个作业、杀死一个作业
    • 监控我们的NM,一旦某个NM挂了,那么该NM上运行的任务需要告诉我们的AM来如何进行处理
  • 2)NodeManager: NM

    • 整个集群中有多个,负责自己本身节点资源管理和使用
    • 定时向RM汇报本节点的资源使用情况
    • 接收并处理来自RM的各种命令:启动Container
    • 处理来自AM的命令
    • 单个节点的资源管理
  • 3)ApplicationMaster: AM

    • 每个应用程序对应一个:MR、Spark,负责应用程序的管理
    • 为应用程序向RM申请资源(core、memory),分配给内部task
    • 需要与NM通信:启动/停止task,task是运行在container里面,AM也是运行在container里面
  • 4)Container

    • 封装了CPU、Memory等资源的一个容器
    • 是一个任务运行环境的抽象
  • 5)Client

    • 提交作业
    • 查询作业的运行进度
    • 杀死作业

这里写图片描述

1)Client向RM提交作业(如MapReduce、Spark作业)。
2)RM为该作业分配第一个NM,与NM进行通信,要求在该NM上启动一个Container。
3)在分配的第一个Container上启动AM;
4)AM向RM进行注册,注册后Client就可以向RM查询作业的进度。同时AM向RM申请所需资源,RM告知后续的NM。
5)AM与后续的NM进行通信,告知需要的Container。
6)NM在需要的Container上执行任务。

  • 以上是一个通用流程:MapReduce AM、Spark AM

3.伪分布式下:YARN配置文件的修改

  • 我的配置文件路径为:/home/hadoop/app/hadoop-2.6.0-cdh5.7.0/etc/hadoop/
  • 1)mapred-site.xml
<property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
</property>
  • 2)yarn-site.xml
<property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
</property>

4.启动YARN

  • 1)YARN的环境变量同Hadoop,已设置(见《大数据Hadoop之环境搭建》),直接打命令启动YARN:
sbin/start-yarn.sh
  • 2)验证是否启动成功:
/** 1.查看进程:应该多了两个个
      ResourceManager、NodeManager */
jps

/** 2.本地的浏览器访问:http://chao:8088
      或 http://192.168.27.131:8088 */

5.启动YARN的过程中可能出现的问题

  • 启动后显示:192.168.27.131: Address 192.168.27.131 maps to bogon, but this does not map back to the address - POSSIBLE BREAK-IN ATTEMPT! 但是看jps进程发现不影响YARN启动
  • 原因:Mac的网卡被占用,无线无法使用时,终端的主机名会自动变成bogon
  • 解决方法:在/etc/hosts文件加上192.168.27.131和对应的主机名。
  • 由此想到了mac配置hosts文件同理:sudo vi /etc/hosts

6.停止YARN

sbin/stop-yarn.sh

7.提交MapReduce作业到YARN上运行

  • 用自带的示例程序:/home/hadoop/app/hadoop-2.6.0-cdh5.7.0/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0-cdh5.7.0.jar
// 命令是hadoop jar,三个参数是pi 2 3 
hadoop jar hadoop-mapreduce-examples-2.6.0-cdh5.7.0.jar pi 2 3 
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值