这里要感谢xiaoxiao, 么么
情况1:
知道了job的name,怎么杀死job?需要先通过以下shell语句
yarn application -list|grep job_name
ps: 看一个资源池下的任务
yarn application -list|grep preonline
找到任务号,例如可能得到这样的结果:
application_1535093390035_1055177 job_name MAPREDUCE rh_safe
然后执行:
hadoop job -kill job_535093390035_1055177
情况2:
如果是shell脚本里嵌套的sql脚本,先执行:
ps -ef|grep test.sh
找到任务号jobnum,然后执行:
pstree -p jobnum
显示如下:
sh(num_1)---java(num_2)---
最后执行:
kill num_1 num_2
但是,请注意:
对于串行的任务,用ps -ef找到并杀死只能让它不执行后面的任务,已经在跑的是不能kill掉的,需要用情况1里面的方法把正在跑的任务kill掉