spark(四)yarn上的运行模式

架构图

yarn-cluster

 

yarn-client

 

区别

Yarn-cluster

spark的driver运行在applicationMaster内,启动流程为:

 

这张图可能比较直观

 

Yarn-client

Spark client向yarn的RM申请资源容器,得到AM,但是这个AM运行在其他nodemanager,并得到其他executor的运行容器。而spark的driver运行在client中。

总结

Yarn-client有单点故障的问题,当client意外死亡后,spark的driver也就一起死亡,并没有其他手段可以恢复。而yarn-cluster中的spark driver运行在有AM的nodemanager,死亡后可以继续在其他nodemanager恢复。

Yarn-client的唯一优点就是方便看调试信息,因为它就跑在client上,不会出现在集群的其他位置。

原文地址:https://www.cnblogs.com/ulysses-you/p/7643882.html