- Ansible 教程
- Ansible - 首页
- Ansible - 简介
- Ansible - 环境设置
- Ansible - YAML 基础
- Ansible - Ad hoc 命令
- Ansible - playbook
- Ansible - 角色
- Ansible - 变量
- Ansible - 高级执行
- Ansible - 故障排除
- Ansible 有用资源
- Ansible - 快速指南
- Ansible - 有用资源
- Ansible - 讨论
Ansible - YAML 基础
Ansible 使用 YAML 语法来表达 Ansible playbook。本章提供 YAML 的概述。Ansible 使用 YAML 是因为它与其他数据格式(如 XML 和 JSON)相比,非常易于人类理解、阅读和编写。
每个YAML 文件可以选择以“---”开头,以“...“结尾。
理解 YAML
在本节中,我们将学习 YAML 数据表示的不同方式。
键值对
YAML 使用简单的键值对来表示数据。字典以键:值对的形式表示。
注意 - : 和值之间应有空格。
示例:学生记录
--- #Optional YAML start syntax james: name: james john rollNo: 34 div: B sex: male … #Optional YAML end syntax
缩写
您也可以使用缩写来表示字典。
示例
James: {name: james john, rollNo: 34, div: B, sex: male}
表示列表
我们也可以在 YAML 中表示列表。列表的每个元素(成员)都应在新的一行中写入,并具有相同的缩进,以“-”(- 和空格)开头。
示例
--- countries: - America - China - Canada - Iceland …
缩写
您也可以使用缩写来表示列表。
示例
Countries: [‘America’, ‘China’, ‘Canada’, ‘Iceland’]
字典内的列表
我们可以在字典中使用列表,即键的值是列表。
示例
--- james: name: james john rollNo: 34 div: B sex: male likes: - maths - physics - english …
字典列表
我们还可以创建字典列表。
示例
--- - james: name: james john rollNo: 34 div: B sex: male likes: - maths - physics - english - robert: name: robert richardson rollNo: 53 div: B sex: male likes: - biology - chemistry …
YAML 使用“|”来包含换行符,同时显示多行,并使用“>”来抑制换行符,同时显示多行。因此,我们可以读取和编辑长行。在这两种情况下,缩进都将被忽略。
我们还可以表示 YAML 中的布尔(True/false)值。其中布尔值可以不区分大小写。
示例
--- - james: name: james john rollNo: 34 div: B sex: male likes: - maths - physics - english result: maths: 87 chemistry: 45 biology: 56 physics: 70 english: 80 passed: TRUE messageIncludeNewLines: | Congratulation!! You passed with 79% messageExcludeNewLines: > Congratulation!! You passed with 79%
一些与 Ansible 相关的常用词。
服务/服务器 - 机器上提供服务的进程。
机器 - 物理服务器、虚拟机 (VM) 或容器。
目标机器 - 我们将使用 Ansible 配置的机器。
任务 - 由 Ansible 管理的操作(运行此操作、删除该操作)等。
Playbook - Ansible 命令写入的 yml 文件,并且 yml 在机器上执行。
广告