2016-05-13 79 views
7

当提交火花采用流程序火花提交(YARN模式) 保持它轮询状态,永不退出提交后如何退出火花提交

是否有任何选项火花提交后退出提交?

===为什么这个麻烦我===

流节目将一直运行下去,我并不需要状态更新

我可以CTRL + C停止它,如果我手动启动它 但我有很多流式上下文开始,我需要使用脚本启动它们

我可以把火花提交程序放在后台, 但是在创建大量后台java进程后,用户对应的,不会能够运行任何其他java进程,因为JVM无法创建GC线程

回答

1

有趣。我从来没有想过这个问题。不确定是否有干净的方法可以做到这一点,但我只需要在机器上停止提交过程,并且纱线作业继续运行,直到您明确停止为止。所以你可以创建一个脚本来执行spark提交并杀死它。当你真的想停止工作时使用纱线技能。脏,但工作。

+0

感谢您的回答。 我想这是现​​在要走的路。 这将是一个好得多,我认为它是正确的方式来做,如果火花提交提供一个选项退出后提交。 –

30

后关闭CMD我知道这是一个老问题,但有一种方法,通过当你使用​​设置--conf spark.yarn.submit.waitAppCompletion=false做到这一点了。有了这个,客户端将在成功提交应用程序后退出。

在YARN群集模式下,控制客户端是否等待退出,直到应用程序完成 。如果设置为true,则客户端进程将保持活动状态,报告应用程序的状态。否则,客户端 进程将在提交后退出。

此外,您可能需要设置--deploy-modecluster

在集群模式下,星火驱动程序的应用程序主 过程是由纱线管理的集群中运行,客户端可以去 在启动应用程序后离开。

更多在https://spark.apache.org/docs/1.6.1/running-on-yarn.html

+0

很好,谢谢你的评论 – Andre85

+0

你应该得到一枚奖章。 – Navarro

+2

这个答案应该被接受。 –