1式撼、salt job管理
1.什么是job踢匣?
- salt每次運(yùn)行任務(wù)時(shí)都會(huì)將作業(yè)任務(wù)發(fā)布到pub-sub總線告匠,minion會(huì)對(duì)任務(wù)做出相應(yīng)。
- 為區(qū)分不同的任務(wù)离唬,salt-master每次發(fā)布一個(gè)任務(wù)都會(huì)為該任務(wù)創(chuàng)建一個(gè)jobid后专,不同的jobid對(duì)應(yīng)一個(gè)獨(dú)立的操作任務(wù)。
- master端默認(rèn)情況下回緩存24小時(shí)內(nèi)的所有job的詳細(xì)操作输莺,緩存目錄為
/var/cache/salt/master/jobs
戚哎。 - minion端每次執(zhí)行任務(wù)都會(huì)在
/var/cache/salt/master/jobs
目錄中創(chuàng)建以jobid為名稱(chēng)的文件,文件里面也是對(duì)本次任務(wù)的緩存嫂用。任務(wù)執(zhí)行完畢后文件會(huì)被刪除型凳。 - 例子如下:
## 在minion執(zhí)行 [root@138 ~]# ls /var/cache/salt/minion/proc/ 輸出為空
## 在master上執(zhí)行一個(gè)長(zhǎng)時(shí)間任務(wù) [root@localhost ~]# salt 138 cmd.run "sleep 100"
## minion端上,用strings查看
[root@138 ~]# ls /var/cache/salt/minion/proc/
20170926162337629827
[root@138 ~]# strings /var/cache/salt/minion/proc/20170926162337629827
tgt_type
glob
20170926162337629827
user
root
sleep 100
cmd.run
20170926162337629827即為jobid嘱函,在任務(wù)執(zhí)行完成后會(huì)被刪除
2甘畅、管理job
#### 查看相關(guān)job的信息
[root@localhost ~]# salt "*" saltutil.find_job 20170926180228138610
138:
----------
arg:
- sleep 100
fun:
cmd.run
jid:
20170926180228138610
pid:
3050
ret:
tgt:
*
tgt_type:
glob
to:
5
user:
root
#### kill指定的job
[root@localhost ~]# salt "*" saltutil.kill_job 20170926180228138610
#### 查看master上cache的所有job:
[root@localhost ~]# salt "*" saltutil.runner jobs.list_jobs|more