知识要点:
Hadoop Yarn概述
Yarn核心概念
Yarn执行流程
Hadoop Yarn概述
Yarn是Yet Another Resource Negotiator的缩写。
Yarn的基本思想是将资源管理和作业调度/监视的功能分解为单独的守护进程。它是一个资源调度平台,负责为运行应用程序提供运算资源,相当于一个分布式的操作系统,而MapReduce则相当于运行于操作系统之上的应用程序。
在Yarn中,ResourceManager和NodeManager构成了数据计算框架。ResourceManager是在系统中对所有应用程序之间要使用的资源进行调度。而NodeManager是每台机器/节点的代理,负责容器,监视其资源使用情况(CPU,内存,磁盘,网络)并将其报告给ResourceManager / Scheduler。
每个应用程序ApplicationMaster实际上是一个特定的框架库,其任务是协调来自ResourceManager的资源,并与NodeManager一起执行和监视任务。
Yarn主要由如下几个组件构成:
- ResourceManager
- NodeManager
- ApplicationMaster
- Container
Yarn核心概念
资源
ResourceManager

- 接受客户端请求
- 接受NodeManager的状态(资源和存活)
- 资源调度,主要包含:整个MR计算程序的资源调度,各个节点的资源和调度
NodeManager - 接收来自ResourceManager发来的命令
- 提供节点运行提供MR程序所需要资源。
应用
MRAppMaster - 协调程序向ResourceManager申请资源
- 启动MapTask和ReduceTask任务
- 监控MapTask和ReduceTask运行情况
ApplicationsManager - 所有应用程序的管理者
- 负责调度应用程序
Container(YarnChild)
抽象资源容器,LXC。给Task提供运行时必要的资源类,如:内存、CPU、网络IO资源等。
Scheduler
负责任务的调度。Scheduler内置中有三种调度模式:
FIFO
先进先出模式。队列模式,先进先出的方式执行提交的应用程序。
FAIR
公平模式。对提交的应用程序进行资源公平划分。
CAPACITY
能力模式。按需进行配置给应用程序进行资源划分。
Yarn执行流程

网友评论