我想请你帮忙 . 我使用saltstack作为奴隶(奴才)的工作调度员,我希望能够看到在奴才上解雇的主要工作事件 .
My setup
工作安排在盐师傅的使用支柱给予奴才 . 支柱是:
schedule_returner: mongo
schedule:
cmd:
function: cmd.run
args:
- date +%s >> /tmp/job_runs
minutes: 1
maxrunning: 1
在小兵身上执行预定作业没有任何问题 . 我可以看到mongodb中的返回数据和我的虚拟文件 /tmp/job_runs
中的新时间戳 . minion /etc/salt/minion.d/_schedule.conf
上的配置文件是:
schedule:
__mine_interval: {enabled: true, function: mine.update, jid_include: true, maxrunning: 2, minutes: 60, return_job: false}
cmd:
args: [date +%s >> /tmp/job_runs]
function: cmd.run
maxrunning: 1
minutes: 1
生成此文件,我没有修改它 .
在minion日志中,我可以看到:
[DEBUG] SaltEvent PUB套接字URI:/var/run/salt/minion/minion_event_1fa42d8010_pub.ipc [DEBUG] SaltEvent PULL套接字URI:/var/run/salt/minion/minion_event_1fa42d8010_pull.ipc [DEBUG]为路径初始化新的IPCClient: /var/run/salt/minion/minion_event_1fa42d8010_pull.ipc [DEBUG]发送事件:tag = schedule_return; data = {'fun_args':['date%s >> / tmp / job_runs'],'jid':'req','return':'','retcode':0,'success':True,'schedule ':'cmd','cmd':' return','pid':10264,' stamp':'2017-02-22T10:03:05.750874','fun':'cmd.run','id': 'vagrant.vm'} [DEBUG]“salt”的小号正在处理事件标记'__schedule_return'[DEBUG] schedule.handle_func:正在删除/ var / cache / salt / minion / proc / 20170222100305532940 [DEBUG] LazyLoaded mongo.returner
现在我有兴趣用标签 __schedule_return
听这些事件 . 在minion上,我可以运行以下命令:
wget https://raw.github.com/saltstack/salt/develop/tests/eventlisten.py
sudo python eventlisten.py -n minion
eventlisten.py
的输出是正确的,我可以看到此事件 .
Now my question is: 有没有办法在salt-master上听这个事件?
当我在master上运行几乎相同的命令时:
wget https://raw.github.com/saltstack/salt/develop/tests/eventlisten.py
sudo python eventlisten.py
我无法通过我的预定工作看到那些事件在小兵身上被开除 . 我这样做的动机是我在我的主人身上运行saltpad,我希望在最近的工作中看到我的预定工作(websockets ......) .
感谢您的任何帮助 .
1 回答
听取事件
观看事件总线的最快方法是通过调用salt-master上的
state.event runner
:射击事件
可以使用
event.send
执行功能触发从minion发送给master的事件:反应堆系统
Salt的Reactor System能够触发操作以响应事件 . Reactor SLS文件和事件标记在主配置文件中关联(默认情况下为
/etc/salt/master
或/etc/salt/master.d/reactor.conf
) .在主配置部分'reactor:'中,您可以指定要匹配的事件标记列表 . 每个事件标记都可以包含要运行的reactor SLS文件的列表 .
有关盐反应器系统的更多信息,请参阅有关reactor system的文档 .