繁体   English   中英

集群模式下如何提交spark作业?

[英]How are spark jobs submitted in cluster mode?

我知道这方面的信息值得 10 个谷歌页面,但是,所有这些都告诉我只需将--master yarn放在spark-submit命令中。 但是,在集群模式下,我的本地笔记本电脑怎么可能知道这意味着什么? 假设我有我的笔记本电脑和一个正在运行的 dataproc 集群。 如何使用笔记本电脑上的 spark-submit 向该集群提交作业?

大多数关于在集群模式下运行 Spark 应用程序的文档都假设您已经在配置 YARN/Hadoop 的同一个集群上(例如,您是 ssh'ed),在这种情况下,大多数情况下 Spark 会选择适当的本地配置和“正常工作”。

Dataproc 也是如此:如果您将 ssh 放到 Dataproc 主节点上,则只需运行spark-submit --master yarn即可。 可以在文档中找到更详细的说明

如果您尝试在笔记本电脑上本地运行应用程序,这将更加困难。 你需要设置一个ssh 到集群的隧道,然后在本地创建配置文件,告诉 Spark 如何通过隧道到达主节点。

或者,您可以使用Dataproc 作业 API将作业提交到集群,而无需直接连接。 需要注意的是,您必须使用属性来告诉 Spark 在集群模式而不是客户端模式下运行( --properties spark.submit.deployMode=cluster )。 请注意,当通过 Dataproc API 提交作业时,客户端和集群模式之间的差异要小得多,因为无论哪种情况,Spark 驱动程序实际上都会在集群上(分别在主服务器或工作器上)运行,而不是在本地笔记本电脑上。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM