ansible自动化运维有两种执行方式,一种是对远程主机批量执行命令,使用ansible命令,直接调用模块加参数执行;另一种是对远程主机批量执行脚本,也是调用模块,但是要把参数按照yanl语法写到一个文件里,执行方式是ansible-playbook 文件名。

以下是一个同时包含tasks和handlers的Ansible playbook示例:

---
- name: Example playbook
hosts: web_servers
become: true tasks:
- name: Install Apache
yum:
name: httpd
state: present
notify:
- Start Apache - name: Configure Apache
template:
src: /path/to/httpd.conf.j2
dest: /etc/httpd/conf/httpd.conf
notify:
- Reload Apache handlers:
- name: Start Apache
service:
name: httpd
state: started - name: Reload Apache
service:
name: httpd
state: reloaded

在这个示例中,tasks定义了两个操作:安装Apache和配置Apache。在每个任务的最后,使用notify关键字指定了需要调用的handlers。

handlers定义了两个操作:启动Apache和重新加载Apache。当前面的tasks完成后,handlers会被自动调用以确保状态更改得以生效。

反应快的同学应该已经知道了,tasks 是任务的序列,比如安装软件和修改配置,相当于程序中的main函数。 而安装软件之后的start与修改配置之后的reload在需要时被调用,相当于功能函数

所以说,"Tasks是用于定义需要在目标主机上执行的操作列表,而handlers是用于响应状态更改的操作集合。Tasks会按照定义的顺序依次执行,而handlers只会在需要时被调用。"。

FAQ: ansible playbook 中 tasks 与 handlers 的区别的更多相关文章

  1. Linux centosVMware 自动化运维Ansible介绍、Ansible安装、远程执行命令、拷贝文件或者目录、远程执行脚本、管理任务计划、安装rpm包/管理服务、 playbook的使用、 playbook中的循环、 playbook中的条件判断、 playbook中的handlers、playbook实战-nginx安装、管理配置文件

    一.Ansible介绍 不需要安装客户端,通过sshd去通信 基于模块工作,模块可以由任何语言开发 不仅支持命令行使用模块,也支持编写yaml格式的playbook,易于编写和阅读 安装十分简单,ce ...

  2. ansible playbook详解

    ansible playbook是由yml语法书写,结构清晰,可读性强,所以必须掌握yml基础语法 语法 描述 缩进 YAML使用固定的缩进风格表示层级结构,每个缩进由两个空格组成,不能使用tabs键 ...

  3. (三)ansible playbook

    一,YAML语法 YAML的语法和其他高阶语言类似并且可以简单表达清单.散列表.标量等数据结构.(列表用横杆表示,键值对用冒号分割,键值对里又可以嵌套另外的键值对) YAML文件扩展名通常为.yaml ...

  4. 3、Ansible playbooks(Hosts、Users、tasks、handlers、变量、条件测试(when、迭代)、templates)

    Ansible playbooks playbook是由一个或多个“play”组成的列表.play的主要功能在于将事先归并为一组的主机装扮成事先通过ansible中的task定义好的角色.从根本上来讲 ...

  5. ansible playbook最佳实践

    本篇主要是根据官方翻译而来,从而使简单的翻译,并没有相关的实验步骤,以后文章会补充为实验步骤,此篇主要是相关理论的说明,可以称之为中文手册之一,具体内容如下: Ansible playbooks最佳实 ...

  6. Ansible Playbook Roles and Include Statements

    介绍 虽然可以在一个非常大的文件中编写一个playbook(您可能会以这种方式开始学习playbook),但最终您将需要重新使用文件并开始组织事情. 在基本级别,饱含任务的文件允许您将配置策略分解成较 ...

  7. Ansible playbook基础组件介绍

    本节内容: ansible playbook介绍 ansible playbook基础组件 playbook中使用变量 一.ansible playbook介绍 playbook是由一个或多个“pla ...

  8. ansible playbook基本操作

    一.ansible playbook简单使用 相当于是把模块写入到配置文件里面 vim /etc/ansible/test.yml //写入如下内容: --- - hosts: 127.0.0.1 r ...

  9. ansible入门四(Ansible playbook基础组件介绍)

    本节内容: ansible playbook介绍 ansible playbook基础组件 playbook中使用变量 一.ansible playbook介绍 playbook是由一个或多个“pla ...

  10. ansible playbook模式及语法

    一.什么是playbook及其组成 什么是playbook playbook 翻译过来就是"剧本" playbook的组成 play:定义的是主机的角色 task:定义的是具体执行 ...

随机推荐

  1. 今天能恢复我的Django吗——恢复了!

    今天能用两小时恢复我的Django吗 实在是累了,昨天和队友改bug的时候为了能在我的电脑上实现他的程序就在datagrip中删了我django建的表.没想到啊,这一删就全是报错!! 不说了,今天看看 ...

  2. json解析异常显示

    解决方案 1.取消FastJson的循环引用的检查:JSONObject.toJSONString(guardVoList,SerializerFeature.DisableCircularRefer ...

  3. 笔记:C++学习之旅---面向对象程序设计2

    笔记:C++学习之旅---面向对象程序设计2 面向对象程序设计基于三个基本概念:数据抽象.继承和动态绑定. 继承和动态绑定对程序的编写有两方面的影响:一是我们可以更容易的定义与其他类相似但不完全相同的 ...

  4. 2015年5月最新win7纯净版系统(32位)补丁最新

    下载地址: http://yunpan.cn/cVN9e679hZ2Pe   访问密码 203a 一.系统安装工具 √ 自由天空最新万能驱动 √ 一键GHOST备份还原系统 √ 硬盘安装系统安装器,增 ...

  5. #Powerquery pq从入门到精通,笔记梳理

    详细视频可以B站搜索,ms_excel博主,看leila的视频翻译课,powerquery从入门到精通. 后续也会根据自己工作来更新这部分的实际用法.

  6. 2023-03-13:给定一个整数数组 A,坡是元组 (i, j),其中 i < j 且 A[i] <= A[j], 这样的坡的宽度为 j - i。 找出 A 中的坡的最大宽度,如果不存在,返回 0

    2023-03-13:给定一个整数数组 A,坡是元组 (i, j),其中 i < j 且 A[i] <= A[j], 这样的坡的宽度为 j - i. 找出 A 中的坡的最大宽度,如果不存在 ...

  7. JS中的纯函数

    在JavaScript中,纯函数是指在相同的输入下,始终产生相同的输出,并且没有副作用的函数.纯函数不会修改或依赖于函数之外的状态,也不会对外部环境产生任何可观察的影响. 以下是纯函数的特点: 1. ...

  8. vue全家桶进阶之路13:生命周期

    Vue2的生命周期是指Vue实例从创建.挂载.更新.销毁等各个阶段中所经历的一系列过程.Vue2的生命周期共有8个阶段,分别是: beforeCreate:Vue实例被创建之前的阶段,此时Vue实例的 ...

  9. ESLint: Expected a space before ‘/&gt;‘, but not found. (vue/html-closing-bracket-spacing)

    文件->设置->编辑器->代码样式->HTML->其他-->在空的标签(打钩)

  10. 手机app抓包个人简述

    1.将在网上下载的手机软件放入apps 2.启动 3.查看结果 urls里是网址