【问题标题】:Spark Standalone Cluster not working well with Client deploy modeSpark 独立集群在客户端部署模式下无法正常工作
【发布时间】:2018-10-21 11:43:07
【问题描述】:

我创建了一个spark集群,三个节点,一个是master,另外两个是worker节点。我可以在 Spark 主 UI 上看到这两个工作人员。

我用“WordCount”Scala 程序创建了一个示例项目,它非常简单,只需读取文件并计算单词出现的次数。

我在主机上使用部署模式“客户端”提交了 spark 提交

./bin/spark-submit --class WordCount --master master-host:7077 --deploy-mode Client

“WordCount”已成功执行。 但是,它只是在 master 上执行,在 Spark master UI 上也看不到驱动程序或应用程序。 在我看来,它将在集群上执行(任务分配给worker节点上的执行器),并且可以在spark master UI上查看应用程序。

我做了一些研究,甚至阅读了 Spark Core 源代码,但没有运气。 任何评论表示赞赏。

【问题讨论】:

  • 您是否也在使用您的主人的机器作为工人?否则,你怎么知道它在master机器上运行?另外,您是从哪台机器上运行 spark-submit 的?最后:您确定您的main 方法没有以冲突的方式创建火花上下文吗?
  • 感谢您的回复,我正在主节点上运行 ./bin/spark-submit...。我没有使用主人作为工人。我不确定您“以冲突的方式创建火花上下文”是什么意思
  • 我的意思是你在应用程序代码中的 spark 上下文可能是通过将其指向 local 的配置创建的...
  • 哦,明白了。我用 spark://master-host:7077 发送了 conf。我期待驱动程序可以分发 rdd 映射并减少到工作节点,但似乎没有。老实说,我不确定是否调用了 worker,因为它没有显示在 Spark 主 UI 上。
  • 我得到了问题的原因,是因为我的 hdfs 有问题,我在 hdfs 中的文件没有被很好地拾取。

标签: apache-spark deployment cluster-computing mode


【解决方案1】:

将您的 spark 提交部署模式更改为集群,默认是客户端,它只会在主节点中执行 spark 作业

./bin/spark-submit --class WordCount --master master-host:7077 --deploy-mode cluster

详情请参考官方 spark 文档

https://spark.apache.org/docs/latest/submitting-applications.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-10
    • 2016-06-11
    • 1970-01-01
    相关资源
    最近更新 更多