1)引言
针对MRv1在扩展性,可靠性,资源利用率和多框架的支持上存在着明显的不足,进而诞生了下一代的MapReduce的计算框架MapReduce Version2,MRV1中有一个很大的问题就是把资源管理和作业调度都扔给了JobTracker,造成了严重的单点瓶颈问题,所有MRV2主要在这一点上做了改进,他将资源管理模块构建成了一个独立的通用系统叫做Yarn,一下子MRV2的核心从MapReduce转到了Yarn上。后面就有了关于Yarn的各种发展和演变了。
)Yarn设计理念和基本架构
yarn是专门为了解决MRV1的缺点而生的。
1.yarn资源利用率高,因为他可以支持不同的计算框架在上面运行
2.运维成本低,以往一个集群一个框架的模式需要很多管理员去维护系统,现在可与在yarn上跑多个框架了,在上面你可以选择实时计算框架Storm,内存迭代式计算框架Spark,还可以用传统的MPI的方式解决对于数据计算要求比较高的数据挖掘算法。用一句话概括,yarn就是一个轻量级弹性计算平台。
Yarn的基本组成结构总体上仍沿用的是Master/Slave的结构,但是在资源管理这块,还是做了一点的变化的,一个ResourceManager是一个Master