- YARN(Yet Another Resource Negotiator),是一个通用的资源管理系统和调用平台。说它是通用的,是因为YARN不只是参与MapReduce任务的调度,也会参与Storm,Spark等其他服务中的资源调度。
- YRAN主要负责集群中内存、CPU等资源的管理以及应用程序申请资源时如何分配。HDFS主要负责磁盘上资源的管理。
- YARN不关心申请资源的是什么应用程序,也不关心申请资源是用来做什么的,它只关心有应用程序申请资源,那么就要去帮助分配资源。
- YARN的三大组件:ResourceManager、NodeManager、ApplicationMaster。
- 官方架构图分析
在该架构图中,从机器角度来看,主要有两种角色:ResourceManager和NodeManager。
ResourceManager是通过yarn-site.xml中<name>yarn.resourcemanager.hostname</name>这个属性来配置的;而集群中的每个节点都会运行NodeManager这个角色。