1. 程式人生 > >Ansible自動化運維之YAML介紹

Ansible自動化運維之YAML介紹

lang ctu 交互性 evel 一個 數組 運維 apple 數據

YAML是一種用來表達資料序列的格式,由於參考了其他多種語言,所以具有很高的可讀性。YAML是YAML Ain‘t Markup Language的縮寫。

特性如下:

1.具有很好的可讀性,易於實現;
2.表達能力強,擴展性號;
3.和腳本語言的交互性好;
4.有一個一致的信息模型;
5.可以基於流來處理。

YAML語法

YAML的語法和其他語言類似,也可以表達散列表、標量等數據結構。其中:
結構(structure)通過空格來展示;
序列(sequence)裏的項用“-”來代表;
Map裏的鍵值對用“:”來分割。
YAML文件擴展名通常為:yaml

基本語法規則:

1. 大小寫敏感
2. 使用縮進表示層級關系
3. 縮進時不允許使用Tab鍵,只允許使用空格
4. 縮進的空格數目不重要,只要相同層級的元素左側對齊即可

YAML支持的數據結構:

1.對象:鍵值對的集合,又稱為映射(mapping)/ 哈希(hashes) / 字典(dictionary)
例如:
name:Example Developer  
  鍵:值
2.數組:一組按次序排列的值,又稱為序列(sequence) / 列表(list)
例如:
-Apple
-Orange
3.純量:單個的、不可再分的值
例如:
number:12.30
sure:true

YAML示例:

name:John
age:18
name:Jerry
age:25
people:
-name:John
      age:18
      -name:Jerry
      age:25

Ansible自動化運維之YAML介紹