runners是由salt-run命令调用的,一般我用的到就是jobs和manage模块。源代码是在
./site-packages/salt/runners/下的。当然我们可以自定义runners。
先谈谈jobs模块。包含active、lookup_jid、list_job、list_jobs、print_job五种方法。
salt-run jobs.active ->返回正在执行状态任务的信息,是个字典。
salt-run jobs.lookup_jid jid ->查看已经执行完成的任务对应jid返回的结果
salt-run jobs.list_job jid -> 查看对应jid的信息:方法、参数、包含minion、任务开始时间等。
salt-run jobs.list_jobs -> 查看所有任务缓存的信息
salt-run jobs.print_job jid -> 类似list_job
下面给个截图:
manage模块。一般用到的方法是status、down、up、versions等。
salt-run manage.status ->输出minions的状态(up和down的状态)
salt-run manage.up ->输出处于运行状态的minions
salt-run manage.down ->输出处于停止状态的minions
salt-run manage.versions -> 输出minions的版本信息
我一般用这个模块来判断哪些机器有问题,哪些minions需要升级版本。
下面给个截图。
现在说说自定义runners。
首先需要修改下master配置文件,增加runners的查找路径。
runner_dirs: [‘/srv/salt/_runners‘]
重启master
下面程序用于显示所有的minion id信息,文件名是kevin.py
#!/usr/bin/env python # coding:utf-8 import salt def get_minions(): opts = salt.config.client_config(‘/opt/app/salt/etc/master‘) key = salt.key.KeyCLI(opts) ids = key.key.list_keys() for status,values in ids.items(): for id in values: print id
调用这个runner获取信息
salt-run kevin.get_minions 192.168.110.132 192.168.110.133 192.168.79.47
runners笔记先写到这里,便于以后使用。
本文出自 “fly天地” 博客,请务必保留此出处http://liuping0906.blog.51cto.com/2516248/1538953
原文地址:http://liuping0906.blog.51cto.com/2516248/1538953