salt-job管理

在SaltStack里执行任何一个操作都会在master上产生一个jid号,minion端会在cache目录下的proc目录创建一个以jid为名称的文件,这个文件里内容就是此次操作的记录,当操作完成后自动删除。

 

salt踢狗salt-run和moudle两种方式来管理JOB

1.通过salt-run来管理job

[root@node2 redis-4.0.10]# salt-run -d |grep jobs
'jobs.active:'
    Return a report on all actively running jobs from a job id centric
        salt-run jobs.active
'jobs.list_job:'
        salt-run jobs.list_job 20130916125524463507
'jobs.list_jobs:'
    List all detectable jobs and associated functions
        salt-run jobs.list_jobs
'jobs.lookup_jid:'
        salt-run jobs.lookup_jid 20130916125524463507
        salt-run jobs.lookup_jid 20130916125524463507 outputter=highstate
'jobs.print_job:'
        salt-run jobs.print_job 20130916125524463507

 

2.可以看到此次的任务号。

[root@node2 redis-4.0.10]# salt 'node1' cmd.run 'sleep 100;whoami'
^CExiting on Ctrl-C
This job's jid is:
20181227213754124155
The minions may not have all finished running and any remaining minions will return upon completion. To look up the return data for this job later run:
salt-run jobs.lookup_jid 20181227213754124155

 

3.查看这个job的运行结果

[root@node2 redis-4.0.10]# salt-run jobs.lookup_jid 20181227213754124155
node1:
root

4.查看这个JOB的详细记录

[root@node2 redis-4.0.10]#  salt-run jobs.list_job 20181227213754124155
Arguments:
    - sleep 100;whoami
Function:
    cmd.run
Minions:
    - node1
Result:
    ----------
    node1:
        ----------
        return:
            root
StartTime:
    2018, Dec 27 21:37:54.124155
Target:
    node1
Target-type:
    glob
User:
    root
jid:
    20181227213754124155

 

二。通过saltstack module 来管理JOB

2.1 查看module的用法

[root@node2 redis-4.0.10]# salt \* sys.doc saltutil |grep job
'saltutil.find_cached_job:'
    Return the data for a specific cached job id
        salt '*' saltutil.find_cached_job <job id>
'saltutil.find_job:'
    Return the data for a specific job id
        salt '*' saltutil.find_job <job id>
'saltutil.kill_job:'
    Sends a kill signal (SIGKILL 9) to the named salt job's process
        salt '*' saltutil.kill_job <job id>
        salt '*' saltutil.runner jobs.list_jobs
'saltutil.signal_job:'
    Sends a signal to the named salt job's process
        salt '*' saltutil.signal_job <job id> 15
'saltutil.term_job:'
    Sends a termination signal (SIGTERM 15) to the named salt job's process
        salt '*' saltutil.term_job <job id>

2.2. 接着用这个例子去测试

[root@node2 redis-4.0.10]# salt 'node1' cmd.run 'sleep 100;whoami'

[root@node2 redis-4.0.10]# salt 'node1' saltutil.find_job 20181227220403774993

可以直接kill这个job

[root@node2 redis-4.0.10]# salt 'node1' saltutil.kill_job 20181227220403774993
node1:
Signal 9 sent to job 20181227220656122140 at pid 143225

 

转载于:https://www.cnblogs.com/zhaobin-diray/p/10187774.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值