2016-06-10 69 views
2

我正在開發一個基本上讀取kafka數據並將其定期保存到HDFS的Spark應用程序。在生產中永遠運行火花流式傳輸

我在YARN上運行pyspark。

我的問題更多用於生產目的。現在,我跑我的應用程序是這樣的:

spark-submit stream.py

想象一下你去提供這種火花流(在python)應用到客戶端,你會爲了保持它的運行下去呢?你不會只是給這個文件,並說「在終端上運行」。這太不專業了。

我想要做的是將作業提交給羣集(或本地處理器),而不必在控制檯上看到日誌,或使用像linux screen這樣的解決方案在後臺運行它(因爲它似乎太不專業)。

永久向羣集提交spark-streaming作業的最專業和最有效的方法是什麼?

我希望我是明確的。謝謝!

+0

即使在關閉終端之後,您的問題仍然會永久運行嗎?你看看spark-submit --deploy-mode「集羣」 – Knight71

+0

@ Knight71,是的,我有。但是這並不能解決我的問題。我的問題是,在製作過程中,你會不會終止一個終端,這樣你就不會殺死火花?我相信LinkedIn或其他任何在生產中使用火花流式傳輸的公司,都有非常好的生產站點部署方法,我很想知道它。 – HackCode

+0

您可以在集羣模式下部署後關閉終端。流式傳輸將毫無問題地運行。 – Knight71

回答

0

你可以使用spark-jobserver,它提供了上傳你的jar和運行它的休息界面。你可以在這裏找到文檔spark-jobserver