Yarn 简介

1. 什么是Yarn ?

Yarn -- 通用资源管理系统和调度平台

2. Yarn 特点

1、支持多计算框架
2、资源利用率高,运行成本低,数据共享。

Yarn资源管理只包括内存与CPU,Yarn回去汇总集群内所有节点上的CPU总和数,和内存总数量。ss(不包括磁盘和网络)
Yarn的意义:降低了企业硬件的成本(多个集群变成一个集群),减少了资源的了浪费,运营成本低。

3. Yarn基本组成

	ResourceManager     :一个集群资源调度的管理者
	NodeManager		    :一个节点资源调度的管理者(集群各个节点资源的工作者)
	ApplicationMaster	: 一个计算任务的管理者	
	Container		    : 容器(cpu 和 内存)

在这里插入图片描述

4. Yarn提交任务的流程

在这里插入图片描述

1、client向RM提交应用程序,其中包括启动该应用的ApplicationMaster的必须信息,例如ApplicationMaster程序、启动ApplicationMaster的命令、用户程序等。
2、ResourceManager启动一个container用于运行ApplicationMaster。
3、启动中的ApplicationMaster向ResourceManager注册自己,启动成功后与RM保持心跳。
4、ApplicationMaster向ResourceManager发送请求,申请相应数目的container。
5、申请成功的container,由ApplicationMaster进行初始化。container的启动信息初始化后,AM与对应的NodeManager通信,要求NM启动container。
6、NM启动启动container。
7、container运行期间,ApplicationMaster对container进行监控。container通过RPC协议向对应的AM汇报自己的进度和状态等信息。
8、应用运行结束后,ApplicationMaster向ResourceManager注销自己,并允许属于它的container被收回。

提交任务的详细流程
在这里插入图片描述

5. Yarn的调度

1、先进先出(FIFO Scheduler):优先提交的,优先执行,后面提交的等待。(火车过隧道)。

2、容量调度(Capacity Scheduler):允许看创建多个任务对列,多个任务对列可以同时执行。但是一个队列内部还是先进先出。CDH默认的调度器。

3、公平调度(Fair Scheduler):第一个程序在启动时可以占用其他对列的资源(100%占用),当其他对列有任务提交时,占用资源的对列需要将资源还给该任务。还资源的时候,效率比较慢。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章