57

コードで未処理の例外が発生したときに、すべての Hadoop ジョブを自動的に強制終了したいと考えています。それを行うためのベストプラクティスは何ですか?

ありがとう

4

6 に答える 6

121

バージョンに応じて、次のようにします。

バージョン <2.3.0

Hadoop ジョブを強制終了します。

hadoop job -kill $jobId

すべての jobId の実行のリストを取得できます。

hadoop job -list

バージョン>=2.3.0

Hadoop ジョブを強制終了します。

yarn application -kill $ApplicationId

すべての ApplicationId の動作のリストを取得できます。

yarn application -list
于 2014-02-13T08:43:15.607 に答える
17

実行listしてすべてのジョブを表示し、適切なコマンドで jobID/applicationID を使用します。

mapred ジョブを強制終了します。

mapred job -list
mapred job -kill <jobId>

ヤーン ジョブを強制終了します。

yarn application -list
yarn application -kill <ApplicationId>
于 2016-10-14T09:16:05.383 に答える
2

プロセス ID を強制的に kill するだけで、hadoop ジョブも自動的に kill されます。次のコマンドを使用します。

kill -9 <process_id> 

例: プロセス ID 番号: 4040 namenode

username@hostname:~$ kill -9 4040
于 2015-01-29T02:16:14.920 に答える