文章目录
- 一、Ansible-playbook
-
-
- 1.1 核心元素
- 1.2 YAML编写格式
- 1.3 常用命令
-
- 二、Ansible-playbook的简单编写
-
-
- 2.1 安装且配置httpd
-
- 三、playbook基础详解
-
-
- 3.1 Tasks 列表
- 3.2 Handlers:在发生改变时执行的操作
- 3.3 变量的优先级
-
一、Ansible-playbook
一个不同于Ansible命令行执行方式的模式,其功能更强大灵活。简单来说,playbooks是一个非常简单的配置管理和多主机部署系统。值得注意,playbook是通过YAML格式来进行描述定义的。
Playbooks 可用于声明配置,在 playbooks 中可以编排有序的执行过程,甚至于做到在多组机器间,来回有序的执行特别指定的步骤.并且可以同步或异步的发起任务.
- 作用:将多个模块操作的功能进行整合;实现重复工作简单化(提高工作效率);实现特殊需求
- 使用adhoc 时,主要是使用 /usr/bin/ansible 程序执行任务.而使用 playbooks 时,更多是将之放入源码控制之中,用之推送你的配置或是用于确认你的远程系统的配置是否符合配置规范.
- Ansible中文权威指南
1.1 核心元素
- Hosts 执行的远程主机列表
- Tasks 任务集
- Varniables 内置变量或自定义变量在playbook中调用
- Templates 模板,即使用模板语法的文件,比如配置文件等
- Handlers 和notity结合使用,由特定条件触发的操作,满足条件方才执行,否则不执行
1.2 YAML编写格式
- 文件的第一行应该以"—"三个连字符开始,表示YAML文件的开始。可以连续三个连子号(—)区分多个play。
- 在同一行中,#之后的内容表示注释
- YMAL中的列表元素以 “-” 开头然后紧跟着一个空格,同一个列表中的元素应该保持相同的的缩进。
- 注意缩进的关系:两个空格一个缩进关系。缩进的级别也必须是一致的,同样的缩进代表同样的级别,程序判别配置的级别是通过缩进结合换行实现的。
- 创建键值对 :使用冒号(如 age: 18)冒号后面必须是一个空格;如果没有空格是错误的;(如 age:18(错误))
1.3 常用命令
运行ymal文件 : ansible-playbook filename.yml
检查语法结构 : ansible-playbook --syntax-check filename.yml
模拟执行剧本 : ansible-playbook -C filename.yml
[root@ansible PlayBook