《Spark数据分析:基于Python语言 》 —3.4.2 集群模式

举报
华章计算机 发表于 2020/02/12 19:13:37 2020/02/12
【摘要】 本节书摘来自华章计算机《Spark数据分析:基于Python语言 》 一书中第3章,第3.4.2节,作者是[澳] 杰夫瑞·艾文(Jeffrey Aven) ,王道远 译。

3.4.2 集群模式

与客户端部署模式相反,当Spark应用以集群模式运行在YARN集群上时,驱动器进程会在集群内作为ApplicationMaster的子进程运行。这种模式提供了更好的弹性,如果包含驱动器进程的ApplicationMaster进程挂掉,集群还可以在另一个节点上重启它。

程序清单3.3展示了如何使用spark-submit命令以集群模式向YARN集群提交应用。由于驱动器进程是运行在集群中的一个异步进程,因此集群模式无法支持交互式shell应用(pyspark和spark-shell)。

程序清单3.3 YARN集群的集群部署模式

 image.png

图3.8提供了Spark应用在YARN集群上以集群模式运行的概览。

 image.png

图3.8 在YARN集群上以集群模式运行的Spark应用

图3.8展示的步骤具体如下所述:

1)客户端是调用spark-submit的用户进程,它把Spark应用提交到集群管理器(YARN的ResourceManager)上。

2)ResourceManager为应用分配出一个ApplicationMaster(Spark的主进程)。驱动器进程在集群的同一个节点上创建。

3)ApplicationMaster向ResourceManager请求容器,以作为执行器使用。ResourceManager

把容器分配给ApplicationMaster,执行器就在这些容器内生成。然后驱动器与执行器通信来安排Spark程序中任务和阶段的处理。

4)驱动器进程运行在集群中的某个节点上,它将Spark应用的进度、结果以及状态返回给客户端。

前面所介绍的Spark应用的网页用户界面运行在集群内ApplicationMaster所运行的主机上,而YARN的ResourceMananger用户界面提供了指向Spark应用用户界面的链接。


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。