我创建了一个包含三个节点的spark集群,一个用于master,另外两个是worker节点。我可以在Spark master UI上看到这两个工人。
我使用" WordCount"创建了一个示例项目。 Scala程序,它非常简单,只需读取文件和计数单词出现次数。
我使用部署模式提交了一个火花提交"客户"在主机上
./ bin / spark-submit --class WordCount --master master-host:7077 --deploy-mode Client
" WordCount"成功执行了。 但是,它只在master上执行,而且在Spark master UI上也看不到驱动程序或应用程序。 在我看来,它将在集群上执行(在工作节点上分配给执行程序的任务),并且可以在spark master UI上查看应用程序。
我做了一些研究甚至阅读Spark Core源代码,但没有运气。 任何评论表示赞赏。
答案 0 :(得分:0)
将您的Spark提交部署模式更改为集群,默认为客户端,客户端将仅在主节点上执行Spark作业
./bin/spark-submit --class WordCount --master master-host:7077 --deploy-mode cluster
请参阅官方Spark文档以获取更多详细信息
https://spark.apache.org/docs/latest/submitting-applications.html