Spark on yarn 彻底解密
本期内容:
1、Hadoop yarn解密
2、Spark on yarn 解密
一、Hadoop Yarn 解析
1、Yarn是Hadoop推出整个分布式(大数据)集群的资源管理器,负责资源的管理和分配,基于Yarn我们可以在同一个大数据集群上同时运行多个计算框架,例如Spark,MapReduce、Storm等;
Yarn有两个主体对象,一个是ResourceManager,负责集群的资源管理,二是Node Manager管理节点的资源,并向ResourceManager汇报每台机器的资源使用情况,继而Yarn可以知道整个集群的资源使用情况,ResourceManager就是整个集群的Master,知道具体的节点启动具体的进程,不会主动到具体机启动具体进程,由NodeMaster启动相应的(ExecutorBackend)进程;
APP Mastr就是当前节点的Master,具体资源就是MEN和CPU等,Container封装了MEN和CPU,它是一个个的JVM虚拟机,APPMstr(负责作业运行,相对于Driver)和Container的关系就是项目经理和员工的关系;
Container的启动是由NodeManager启动,Container要向Nodemanage汇报资源信息,Container要向App Mstr汇报计算信息。
3、Client端向ResourceManager提交Application,ResourceManager接收应用并根据集群资源状况决定在具体某个Node上来启动当前提交的应用程序的任务调度器Driver(ApplicationMaster),然后命令具体的某个Node上的资源管理器NodeManager来启动一个新的JVM基础运行程序的Driver部分,当ApplicationMaster启动的时候会下载当前Application相关的Jar等各种资源并基于此决定向ResourceManager申请资源的具体内容(例如需要多少个Container,和Container的配置),ResourceManager接