4.Ansible.handlers定义执行完成后需要调用的后续任务

4.Ansible.handlers定义执行完成后需要调用的后续任务

重点:handlers是一个特殊的task,正常情况下不会被执行。什么时候会被执行,当有notify通知时,才会被触发执行。notify通知的描述名称,必须和handlers的name一致才能被触发。

通过playbook部署httpd

- hosts: test
  tasks:
 
    - name: install httpd server                ##安装httpd
      yum:
        name: httpd
        state: present
 
    - name: configer httpd server               ##配置httpd服务
      copy:
        src: /httpd.conf.j2
        dest: /etc/httpd/conf/httpd.conf
      notify: Restart httpd server              ##如果ansible推送的文件与被控端文件不一致,则由notify通知handlers触发执行
                                                ##notify 后面的内容必须与handlers下的name:的内容一致,否则无法调用handlers的内容
 
    - name: start httpd server                  ##启动httpd服务
      systemd:
        name: httpd
        state: started
        enabled: yes
 
  handlers:                                    
    - name: Restart httpd server
      systemd:
        name: httpd
        state: restarte
模块的大概执行流程

在这里插入图片描述
例如:
当我们把httpd.conf的端口从80 改成90
再次执行ansible-playbook httpd_server.yml的时候,会检测到与之前推送的配置文件有差别,就会调用notify去启用handlers

在浏览器中换成90端口,被控的Apache才能正常被访问
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值