我正在創建一個shell腳本,該腳本將從Jenkins中執行,因爲我們有很多流式作業,並且似乎更容易從Jenkins管理。所以我創建了下面的腳本。如何知道應用程序是否處於RUNNING狀態以殺死spark-submit過程?
#!/bin/bash
spark-submit "spark parameters here" > /dev/null 2>&1 &
processId=$!
echo $processId
sleep 5m
kill $processId
如果我沒有睡眠,spark-submit進程立即被終止並且沒有提交spark應用程序。如果有睡眠,火花提交過程有足夠的時間提交火花應用程序。
我的問題是,有沒有更好的方法來知道火花應用程序是否處於RUNNING狀態,以便火花提交過程可以被殺死?
星火1.6.0紗
我正在使用紗線,因此我使用紗線應用程序-list&grep應用程序名稱來獲取應用程序ID,同時使用睡眠來檢查更新狀態。 –