最近在学习saltstack的reactor模块,由于在业务上没有有关reactor的需求。这里只是举个例子,方便将来参考使用。
原理:reactor分为两部分:tag和sls。reactor去匹配这个tag(event的tag),匹配到则执行对应的sls文件。这个需要结合event。其实这个类似于zabbix的triggers。
在配置文件目录创建master.d/reactor.conf
reactor:
- 'salt/job/*/ret/*':
- /srv/reactor/start.sls
重启master
创建/srv/reactor/start.sls
{% if data['id'] == '192.168.110.133' %}
cmd_run:
cmd.cmd.run:(这里写的是salt可执行模块,modules里的模块)
- tgt: '192.168.110.132'
- arg:
- /bin/touch /tmp/demo
{% endif %}
触发事件:
salt '192.168.110.133' test.ping
没意外的话,会在192.168.110.132上创建/tmp/demo文件
关于event的信息请参考event文章。
参考:
http://docs.saltstack.com/en/latest/topics/reactor/
http://vbyron.com/blog/infrastructure-management-saltstack-part-3-reactor-events/
原文地址:https://www.jb51.cc/react/308120.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。