Hadoop资源管理-YARN

1.YARN产生的原因

在Hadoop1.0中如果使用JobTracke作为资源管理器,那么除了MapReduce任务外,不能够运行其他任务。也就是说如果集群的MapReduce任务没有饱满,集群资源等于白白的浪费,从而YARN能成功解决这个问题。

2.什么是YARN?

YARN是hadoop 2.X提出的,是任务分配和集群资源管理框架。
YARN的资源管理框架包括ResourceManager(资源管理器),ApplicationMaster,NodeManager(节点管理器)。

3.YARN的架构

YARN在MR2中的架构如图所示
在这里插入图片描述
(1)ResourceManager

 ResourceManager是一个全局的资源管理器,负责整个系统的资源管理和分配。它主要由两个组件构成:调度器(Scheduler)和应用程序管理器(ApplicationManager,AM)。
 Scheduler负责分配最少但满足Application运行所需的资源量给Application。Scheduler只是基于资源的使用情况进行调度,并不负责监视/跟踪Application的状态,也不会处理失败的Task。
 ApplicationManager 负责处理客户端提交的Job以及协商第一个Container以供ApplicationMaster运行,并且在ApplicationMaster失败的时候会重新启动ApplicationMaster(YARN中使用Resource Container概念来管理集群资源,Resource Container是资源的抽象,每个Container包括一定的内存,IO,网络等资源)。

(2)ApplicationMaster

 ApplicationMaster是一个框架特殊的库,每个Application有一个ApplicationMaster,负责应用程序相关的事务,比如任务调度、任务监控和容错等。

(3)NodeManager

 主要负责启动ResourceManager分配给ApplicationMaster的Container,并且会监视Container的运行情况。
 在启动Container的时候NodeManager会设置一些必要的环境变量以及相关文件,当所有准备工作做好后,才会启动该Container。
 启动后,NodeManager会周期性地监视该Container运行占用的资源情况,若是超过了该Container所声明的资源量,则会kill掉该Container所代表的进程。

目前多个计算框架可以运行在YARN 上,比如MapReduce、Spark 、Storm等。

4.YARN上程序的执行流程

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值