spark的yarn cluster模式和yarn clinet模式的区别

1、spark的yarn cluster模式和yarn clinet模式的区别:

Driver:表示main()函数,创建SparkContext。由SparkContext负责与ClusterManager通信,进行资源的申请,任务的分配和监控等。程序执行完毕后关闭SparkContext。

理解YARN-Client和YARN-Cluster深层次的区别之前先清楚一个概念:Application Master。在YARN中,每个Application实例都有一个ApplicationMaster进程,它是Application启动的第一个容器。它负责和ResourceManager打交道并请求资源,获取资源之后告诉NodeManager为其启动Container。从深层次的含义讲YARN-Cluster和YARN-Client模式的区别其实就是ApplicationMaster进程的区别。

1、YARN-Cluster模式下,Driver运行在AM(Application Master)中,它负责向YARN申请资源,并监督作业的运行状况。当用户提交了作业之后,就可以关掉Client,作业会继续在YARN上运行,因而YARN-Cluster模式不适合运行交互类型的作业;

2、YARN-Client模式下,Application Master仅仅向YARN请求Container运行Executor,但Application Master不运行SparkContext,SparkContext是进行task分配和管理的,SparkContext运行在Client上,Client会和请求的Container通信来调度他们工作,也就是说Client不能离开。

 

转载总结博客:https://home.cnblogs.com/u/frankdeng

猜你喜欢

转载自www.cnblogs.com/guoyu1/p/12369273.html