YAML
- 可读性高、用来表达数据序列的格式语言
- 以数据为中心、重点描述数据的关系和结构
YAML格式:
- 注释 # 一般第一行为三个横杠表示(—)
- key: value 数组使用 - 表示 (后有空格)
- 一般缩进为至少两个空格,相同等级缩进一致
- 区分大小写,扩展名为yaml yml
- 跨行数据使用 >(多行为一行) 或者 | (| 多行 )
Playbook剧本
- 剧本中可以包含多个任务
- 随时根据剧本执行相关命令
- Playbook剧本按照YAML格式编写
- 适合执行经常执行的复杂任务
Playbook:由一个或多个play 组成,每个play包含host(主机),tasks(任务),vars(变量)等元素组成,运行使用ansible-playbook命令运行
eg: vim test_john.yml
---
- hosts: 主机
tasks:
- name: 任务的描述信息
user: //调用的模块名
name: //相当与-a 的参数
uid:
...
-hosts: 主机名
tasks:
- name :
ping:
注:ansible 命令执行 黄色(成功) 绿色(无更改) 红色(报错)
二、定义变量
ansible 支持十几种定义变量的方法,按照优先级排序定义方式为:
- Inventory变量 (在主机清单配置文件定义)
- Host Fact 变量(直接调用ansible收集的系统信息)
- Playbook 变量(vars在playbook中定义变量)
- 变量文件(定义变量文件 playbook使用vars_files调用)