spark on yarn 资源计算
1、spark job 提交模式 spark on yarn 分两种情况,一种是yarn-client 提交,一种是yarn-cluster提交方式,两种方式的区别是: yarn-cluster模式下,driver运行在AM(Application Master)中,它负责向YARN申请资源,并监督作业的运行状况。当用户提交了作业之后,就可以关掉Client,作业会继续在YARN上运行; yarn-client模式下,Application Master仅仅向YARN请求executor,client会和请求的container通信来调度他们工作; 其中yarn集群包含RM,NM,AM的概念如下: ResourceManager:是集群所有应用程序的资源管理器,能够管理集群的计算资源并为每个Application分配,它是一个纯粹的调度器。 NodeManager:是每一台slave机器的代理,执行应用程序,并监控应用程序的资源使用情况。 Application Master:每一个应用程序都会有一个Application Master,它的主要职责是向RM申请资源、在每个NodeManager上启动executors、监控和跟踪应用程序的进程等。 spark中driver的作用: - 运行应用程序的main函数 - 创建spark的上下文 - 划分RDD并生成有向无环图