码迷,mamicode.com
首页 > 其他好文 > 详细

ansible学习笔记5-playbooks之handlers

时间:2016-05-18 12:53:48      阅读:610      评论:0      收藏:0      [点我收藏+]

标签:ansible

Handlers 在发生改变时执行的操作


module具有幂等性,所以当远端系统被人改动时,可以重放playbooks达到恢复的

目的。playbooks本身可以识别这种改动,并且有一个基本的event system,可以

响应这种改动


notify actions会在playbook的每一个task结束时被触发,而且即使有多个不同

的task通知改动的发生,notify actions只会被触发一次


举例来说,比如多个resources指出因为一个配置文件被改动,所以apache需要重

新启动,但是重新启动的操作只会被执行一次


这里有一个例子,当一个文件的内容被改动时,重启两个services


- name: template configuration file

  template: src=template.j2 dest=/etc/foo.conf

  notify:

      - restart memcached

 - restart apache

 

notify下列出的即是handlers


handlers也是一些task的列表,通过名字来引用,它们和一般的task并没有什么

区别。handlers是由通知者进行notify,如果没有被notify,handlers不会执行

不管多少个通知者进行了notify,等到play中的所有task执行完成之后

handlers也不会被执行一次


这里是一个handlers的示例

handlers:

    - name: restart memcached

 service: name=memcached state=restarted

- name: restart apache

 service: name=apache state=restarted

 

Handlers最佳的应用场景是用来重启服务,或者触发系统重启操作,除此以外很

少用到了


本文出自 “八英里” 博客,谢绝转载!

ansible学习笔记5-playbooks之handlers

标签:ansible

原文地址:http://5921271.blog.51cto.com/5911271/1774665

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!