Client模式和Cluster模式最最本质的区别是:Driver程序运行在哪里。 Client模式:学习测试时使用,生产不推荐(要用也可以,性能略低,稳定性略低) 1.Driver运行在Client上,和集群的通信成本高 2.Driver输出结果会在客户端显示 Cluster模式:生产环境中使用该模式 1.Driver程序在YARN集群中,和集群的通信成本低 2.Driver输出结果不能在客户端显示 3.该模式下Driver运行ApplicattionMaster这个节点上,由Yarn管理,如果出现问题,yarn会重启 ApplicattionMaster(Driver)
具体流程步骤如下: 1)、Driver在任务提交的本地机器上运行,Driver启动后会和ResourceManager通讯申请启动ApplicationMaster ; 2)、随后ResourceManager分配Container,在合适的NodeManager上启动ApplicationMaster,此时的 ApplicationMaster的功能相当于一个ExecutorLaucher,只负责向ResourceManager申请Executor内存; 3)、ResourceManager接到ApplicationMaster的资源申请后会分配Container,然后ApplicationMaster在资源分 配指定的NodeManager上启动Executor进程; 4)、Executor进程启动后会向Driver反向注册,Executor全部注册完成后Driver开始执行main函数; 5)、之后执行到Action算子时,触发一个Job,并根据宽依赖开始划分Stage,每个Stage生成对应的TaskSet,之后 将Task分发到各个Executor上执行。
具体流程步骤如下: 1)、任务提交后会和ResourceManager通讯申请启动ApplicationMaster; 2)、随后ResourceManager分配Container,在合适的NodeManager上启动ApplicationMaster,此时的 ApplicationMaster就是Driver; 3)、Driver启动后向ResourceManager申请Executor内存,ResourceManager接到ApplicationMaster的资源申请 后会分配Container,然后在合适的NodeManager上启动Executor进程; 4)、Executor进程启动后会向Driver反向注册; 5)、Executor全部注册完成后Driver开始执行main函数,之后执行到Action算子时,触发一个job,并根据宽依赖开 始划分stage,每个stag 标签:ResourceManager,启动,部署,Driver,ApplicationMaster,YARN,模式,Executor,Spark From: https://www.cnblogs.com/daitu66/p/17961081