示例:安装Nginx
--- - hosts: hadoop #指定主机组 remote_user: root #远程执行命令的用户 gather_facts: no #是否获取远程主机的信息 tasks: - name: install Nginx yum: name: Nginx state: present notify: restart Nginx #通知机制,当这个任务执行的时候,通知handlers执行 - name: start Nginx server service: name: Nginx state: started handlers: - name: restart Nginx service: name: Nginx state: restarted
注:在剧本编写完以后,可以使用--Syntax-check检查剧本的语法是否有问题,使用--check或者-C来预执行剧本。
handlers的用处:一般是当修改某个配置文件的时候,通过handlers来执行某个任务。
在某些情况下,可能需要同时调用多个handlers,或者handlers调用其他的handlers。
- name: test command: /test.sh notify: - restart Nginx - restart MysqL
2、要handlers调用handlers,则在handlers中直接使用notify
handlers: - name: test service: name: Nginx state: restarted notify: restart MysqL
当剧本执行失败以后,handlers可能并没有被触发,也就不会执行了,如果想不管任务是否成功执行,都强制执行handlers。
在这个时候,可以在执行playboox的时候,添加--force-handlers来强制执行handlers
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。