Ansible-yaml-basics

提供:Dev Guides
移動先:案内検索

Ansible-YAMLの基本

Ansibleは、Ansibleプレイブックを表現するためにYAML構文を使用します。 この章では、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で Boolean (True/false)値を表すこともできます。 boolean 値は大文字と小文字を区別しません。

---
- 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に関連する一般的な単語。

*Service/Server* -サービスを提供するマシン上のプロセス。

マシン-物理サーバー、vm(仮想マシン)またはコンテナ。

ターゲットマシン-Ansibleで設定しようとしているマシン。

タスク-Ansibleが管理するアクション(これを実行、削除)など。

 *Playbook* -Ansibleコマンドが書き込まれ、ymlがマシンで実行されるymlファイル。
____ ____