yarn-cluster和yarn-client的区别

yarn-cluster和yarn-client的区别

  1. SparkContext初始化不同,这也导致了Driver所在位置的不同,Yarn-Cluster的Driver是在集群的某一台NM上,但是Yarn-Client就是在driver所在的机器上;
  2. 而Driver会和Executors进行通信,这也导致了Yarn_cluster在提交App之后可以关闭Client,而Yarn-Client不可以;
  3. 日志: Yarn-Cluster 需要通过 yarn logs -applicationId (启动appid)查看,
    Yarn-Client 日志查看仅需在本地查看;
  4. 最后再来说应用场景,Yarn-Cluster适合生产环境,Yarn-Client适合交互和调试。

流程:

1、发送请求到RM,请求启动AM
2、RM会分配container,在某个NM上启动AM

3、AM启动后,和RM通讯,请求container来启动executor

4、RM会给AM提供一批container用于启动executor

5、AM连接其他NM启动executor

6、executor启动后向AM反向注册

yarn-client

yarn-cluster和yarn-client的区别_第1张图片

yarn-cluster

yarn-cluster和yarn-client的区别_第2张图片

你可能感兴趣的:(Spark)