Ansible YAML基础知识

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中表示 布尔值 (真/假)。其中 布尔值 可以不区分大小写。

示例

---  
- 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相关的常见词语

服务/服务器 − 提供服务的机器上的进程。

机器 − 物理服务器,虚拟机或容器。

目标机器 − 我们将使用Ansible配置的机器。

任务 − Ansible管理的操作(运行这个,删除那个)等。

Playbook(剧本) − 包含Ansible命令的yml文件,会在机器上执行的yml文件。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程