Ad-Hoc的问题
通过对Ad-hoc的了解,外面只能对被管理节点执行一些普通简单的命令语句,但是在日常的工作中,外面往往面临一系列的复杂操作,比如要更新配置,安装软件,启动服务等等,在这种场景下,ansible引进了plabook来帮忙解决这些复杂的问题
playbook是什么
playbook被大家翻译成为剧本
可以认为它是ansible自定义的一门语言,就相当于linux中的shell
playbook遵循yaml的语法格式
YAML特点
- YAML 文件以 # 为注释符
- YAML 文件以.yml或者.yaml结尾
- YAML 文件以—开始,以…结束,但开始和结束标志都是可选的
2.基本语法
- 大小写铭感
- 使用缩颈表示层级关系
- 缩进时是使用tab键还是使用空格一定要达到统一,建议使用空格
- 相同层级的元素必须左侧对齐
YAML 支持的数据结构有三种
字符串
列表
字典
接下来分别介绍他们
字符串:
---
#YAML 中的字符串可以不使用引号,即使里面存在空格的时候,当然了使用了单引号和双引号也没有错
this is a string
'this is a string'
"this is a string"
#YAML 中若一行写不下你要表述的内容,可以进行折行,
long_line: |
Example 1
Example 2
Example 3
#或者
long_line: >
Example 1
Example 2
Example 3
列表:
#可以认为他是python中的list 或者C中的数组
#定义:以短横线开头 + 空格 + 具体的值
- red
- green
- blue
#如果转换成列表的形式就是这样
#{
'red','green','blue'}
字典:
#定义 key + : + 空格 + 值 即:key: value
name: Using Ansible
code: D1234
#转换为python的Dict
#{
'name':'Using Ansible','code': 'D1234'}
混合结构