ansible之playbook剧本

Playbook

1.playbook的组成部分

开头

用 --- 表示,表示是一个yaml文件,但是可以忽略不写

Tasks(任务)

包含了在目标主机上执行的操作,操作还是由模板来执行。每一个任务都是一个ansible的模块,调用系统命令、操作管理等等。

Variables(变量)

存储和传递数据,可以自定义变量,在playbook中变量都是全局的。

Templates模板

用于生成配置文件,可以在ansible当中定义好变量和属性,直接传给配置文件。

Handlers处理器

满足条件时,进行触发的操作,通常用在任务发生"change"时,可以触发这个处理器,一般是用处理器来对服务进行重启

Roles 角色

是一种组织和封装playbooks的方式,类似docker-compose。(现在几乎不用)

2.实例

实例1: 简单的playbook

实例2: vars

实例3: when判断

练习

主机2台,只有当ip=192.168.206.50时,安装nginx,修改访问的页面"this is nginx",修改完之后重启服务。

实例4: 循环

with_items 循环遍历

with_list 列表输出

with_together 同一列表位置数据组合输出的循环

with_nested 列表数据循环匹配

三种循环传参方式

实例5: tags

#tags -->

#debug 在ansible中相当于标签,在执行playbook的时候指定标签来运行我们需要的tasks。

1.debug:调试,调试的结果不会写入到目标主机

2.always:始终会运行的任务。

3.setup:收集主机信息

4.pre_tasks:在主任务之前运行的任务

5.post_tasks:在主任务之后运行的任务

6.自定义标签

7.never:这个任务永远不运行

实例6: template

相关推荐
IT成长日记16 小时前
【自动化运维神器Ansible】Ansible常用模块之File模块详解
运维·自动化·ansible·file·常用模块
IT成长日记2 天前
【自动化运维神器Ansible】Ansible常用模块之Copy模块详解
运维·自动化·ansible·copy·常用模块、
IT成长日记3 天前
【自动化运维神器Ansible】Ansible常用模块之shell模块详解
运维·自动化·ansible·shell·常用模块
菜萝卜子3 天前
【Ansible】Ansible 管理 Elasticsearch 集群启停
elasticsearch·ansible
Neng_Miao5 天前
Ansible命令
ansible
朱包林5 天前
ansible批量部署zabbix客户端
linux·运维·服务器·云计算·ansible·zabbix
有想法的py工程师7 天前
Ansible 查看PostgreSQL的版本
数据库·postgresql·ansible
有想法的py工程师9 天前
Rocky9安装Ansible
linux·运维·ansible
庸子9 天前
Ansible & AWX 自动化运维
运维·自动化·ansible
孙克旭_14 天前
day051-ansible循环、判断与jinja2模板
linux·运维·服务器·网络·ansible