即使在Spark Master进程被杀死后,Spark Job也会运行

时间:2017-01-30 11:12:58

标签: apache-spark spark-streaming spark-dataframe yarn

我们正致力于火花集群,即使在火花之后,火花作业也能成功提交。#34; Master"过程被杀死了。

以下是我们正在做的事情的完整细节。

流程详情: -

JPS 19560 NameNode 18369 QuorumPeerMain 22414 Jps 20168 ResourceManager 22235大师

我们使用像

这样的命令向这个Master提交了一个spark作业

spark-1.6.1-bin-without-hadoop / bin / spark-submit --class com.test.test --master yarn-client --deploy-mode client test.jar -incomingHost hostIP

其中hostIP具有正确运行的机器的IP地址" Master"处理。 在此之后,我们也能够在RM Web UI中看到这份工作。 现在,当我们杀死" Master"进程,我们可以看到提交的作业运行正常,这是我们正在使用纱线模式,并且该作业将毫无问题地运行。

现在我们杀死了#34; Master"处理。 但是当我们再次提交相同的命令" spark-submit"指向目前正在下降的同一主IP,我们再次看到RM web ui(主持人:8088)的工作,我们无法理解为Spark" Master"被杀死(和主持人:8080)火花UI也没有来。

请注意我们正在使用" yarn-client"模式如下代码

sparkProcess = new SparkLauncher()
.......
.setSparkHome(System.getenv("SPARK_HOME"))    
.setMaster("yarn-client")
.setDeployMode("client") 

请有人能解释一下这种行为吗?在阅读了许多博客(http://spark.apache.org/docs/latest/running-on-yarn.html)和官方文档后没有找到。 谢谢

1 个答案:

答案 0 :(得分:0)

请检查cluster overview。根据您的描述,您在纱线群集模式下运行spark应用程序,并在启动命令的实例中放置驱动程序。 Spark master与spark独立集群模式有关,在你的案例启动命令上应该类似于

spark-submit --master spark://your-spark-master-address:port