salt每次运行任务时都会将作业任务发布到pub-sub总线,minion会作出响应,为区分任务,master会将任务创建一个jobid。master一般会缓存24小时任务数据。缓存目录再配置文件中设置。

minion端每次执行任务都会在/var/cache/salt/minion/proc中以jobid为名称的文件。

[root@WebA-136 ~]# ls -l /var/cache/salt/minion/proc/20181121105410787020
-rw-r--r--. 1 root root 97 11月 21 12:18 /var/cache/salt/minion/proc/20181121105410787020

使用strings命令查看

[root@WebA-136 ~]# strings /var/cache/salt/minion/proc/20181121105410787020
tgt_type
glob
20181121105410787020
user
root
sleep 600
cmd.run
[root@WebA-136 ~]#

在master中查看任务

[root@Management-Machine-140 salt]# salt '136' saltutil.find_job 20181121105410787020
136:
    ----------
    arg:
        - sleep 600
    fun:
        cmd.run
    jid:
        20181121105410787020
    pid:
        1592
    ret:
    tgt:
        136
    tgt_type:
        glob
    user:
        root
[root@Management-Machine-140 salt]#

kill任务

[root@Management-Machine-140 salt]# salt '136' saltutil.kill_job 20181121105410787020
136:
    Signal 9 sent to job 20181121105410787020 at pid 1592

查看master上cache的所有任务

[root@Management-Machine-140 salt]# salt '136' saltutil.runner jobs.list_jobs|more
136:
    ----------
    20181114174829280957:
        ----------
        Arguments:
        Function:
            runner.jobs.list_jobs
        StartTime:
            2018, Nov 14 17:48:29.280957
        Target:
            WebA-136_master
        Target-type:
        User:
            UNKNOWN