浅谈Yarn的资源调度

1. 初代MR的不足

(1.JobTracker要承担的任务过大,维护Job状态的同时又要维护job的task状态,造成过多资源消耗在Tarcker。2.在TaskTracker端会消耗大量的资源用于调度整合,容易出现OOM。3.把资源强制划分为M Slot / R Slot )
1、扩展性差
    2、可靠性低
    3、资源利用率低
    4、不支持多种计算框架

2. 首先我们要知道Yarn是什么?

Yarn是一个资源调度平台(它是Hadoop2以上的新特性),负责为运算程序提供服务器运算资源,相当于一个分布式的操作系统平台,而MR等运算程序则相当于运行于操作系统之上的应用程序。它弥补的初代MR编程框架的不足。Yarn不知程序的运行机制,只提供运算资源的调度,主管角色ResourceManager,运算资源角色NodeManager。

3. Yarn的优势

作为资源的调度者,它于运行程序完全解耦,就意味这Yarn上可以运行各种类型的分布式计算程序(MapReduce,Storm,Spark等)。
1: Yarn有两个单独的守护进程,ResourceManager和ApplicationMaster。
2: ResourceManager与NodeManager组成了基本的数据计算框架,ResourceManager负责协调集群的资源利用。

4. Yarn的基本框架

浅谈Yarn的资源调度
浅谈Yarn的资源调度