reactor学习

最近在学习saltstack的reactor模块,因为在业务上没有有关reactor的需求。这里只是举个例子,方便未来参考使用。
react


原理:reactor分为两部分:tag和sls。reactor去匹配这个tag(event的tag),匹配到则执行对应的sls文件。这个须要结合event。其实这个相似于zabbix的triggers。ide


在配置文件目录建立master.d/reactor.conf学习

reactor:spa

  - 'salt/job/*/ret/*':blog

    - /srv/reactor/start.sls事件

重启masterget


建立/srv/reactor/start.slscmd

{% if data['id'] == '192.168.110.133' %}it

cmd_run:event

  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/

相关文章
相关标签/搜索