spark任务执行过程如下图

Yarn和Spark的StandAlone调度模式对比
ResouceManager Master 管理子节点、资源调度、接收任务请求
NodeManger Worker 管理当前节点,并管理子进程
YarnChild Executor 运行真正的计算逻辑的(Task)
Client SparkSubmit (Client + ApplicaitonMaster)提交app,管理该任务的Executor
ApplicaitonMaster 并将Task提交到(Executor)