Yarn通俗介绍
![](https://i-blog.csdnimg.cn/blog_migrate/f53a06a5775ebcfd83cd4128faa7e3bf.png)
Apache Hadoop YARN (Yet Another Resource Negotiator,另一种资源协调者)是一种新的 Hadoop 资源管理器,它是一个通用资源管理系统和调度平台,可为上层应用提供统一的资源管理和调度,它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。
可以把yarn理解为相当于一个分布式的操作系统平台,而mapreduce等运算程序则相当于运行于操作系统之上的应用程序,Yarn为这些程序提供运算所需的资源(内存、cpu)。
![](https://i-blog.csdnimg.cn/blog_migrate/772b74b9d20e671b3680c11fd7d2854c.png)
lyarn并不清楚用户提交的程序的运行机制
lyarn只提供运算资源的调度(用户程序向yarn申请资源,yarn就负责分配资源)
lyarn中的主管角色叫ResourceManager
lyarn中具体提供运算资源的角色叫NodeManager
lyarn与运行的用户程序完全解耦,意味着yarn上可以运行各种类型的分布式运算程序,比如mapreduce、storm,spark,tez ……
lspark、storm等运算框架都可以整合在yarn上运行,只要他们各自的框架中有符合yarn规范的资源请求机制即可
lyarn成为一个通用的资源调度平台.企业中以前存在的各种运算集群都可以整合在一个物理集群上,提高资源利用率,方便数据共享