Ansible - YAML-Grundlagen

Ansible verwendet die YAML-Syntax zum Ausdrücken von Ansible-Playbooks. Dieses Kapitel bietet einen Überblick über YAML. Ansible verwendet YAML, weil es für Menschen im Vergleich zu anderen Datenformaten wie XML und JSON sehr einfach ist, zu verstehen, zu lesen und zu schreiben.

Jeder YAML Die Datei beginnt optional mit "---" und endet mit "...".

YAML verstehen

In diesem Abschnitt lernen wir die verschiedenen Arten der Darstellung der YAML-Daten kennen.

Schlüssel-Wert-Paar

YAML verwendet ein einfaches Schlüssel-Wert-Paar, um die Daten darzustellen. Das Wörterbuch wird im Schlüssel: Wert-Paar dargestellt.

Note - Zwischen: und Wert sollte ein Leerzeichen stehen.

Beispiel: Ein Schülerdatensatz

--- #Optional YAML start syntax 
james: 
   name: james john 
   rollNo: 34 
   div: B 
   sex: male 
… #Optional YAML end syntax

Abkürzung

Sie können auch Abkürzungen verwenden, um Wörterbücher darzustellen.

Beispiel

James: {name: james john, rollNo: 34, div: B, sex: male}

Repräsentierende Liste

Wir können List auch in YAML darstellen. Jedes Element (Mitglied) der Liste sollte in eine neue Zeile mit demselben Einzug geschrieben werden, beginnend mit „-“ (- und Leerzeichen).

Beispiel

---
countries:  
   - America 
   - China 
   - Canada 
   - Iceland 
…

Abkürzung

Sie können auch Abkürzungen verwenden, um Listen darzustellen.

Beispiel

Countries: [‘America’, ‘China’, ‘Canada’, ‘Iceland’]

Liste in Wörterbüchern

Wir können die Liste in Wörterbüchern verwenden, dh der Wert des Schlüssels ist die Liste.

Beispiel

---  
james: 
   name: james john 
   rollNo: 34 
   div: B 
   sex: male 
   likes: 
      - maths 
      - physics 
      - english 
…

Liste der Wörterbücher

Wir können auch eine Liste von Wörterbüchern erstellen.

Beispiel

---  
- 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 verwendet "|" Einfügen von Zeilenumbrüchen bei mehreren Zeilen und ">" zum Unterdrücken von Zeilenumbrüchen bei mehreren Zeilen. Dadurch können wir große Zeilen lesen und bearbeiten. In beiden Fällen wird die Absicht ignoriert.

Wir können auch vertreten Boolean(Richtig / Falsch) Werte in YAML. woboolean Bei Werten kann die Groß- und Kleinschreibung nicht berücksichtigt werden.

Beispiel

---  
- 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%

Einige gebräuchliche Wörter im Zusammenhang mit Ansible.

Service/Server - Ein Prozess auf dem Computer, der den Dienst bereitstellt.

Machine - Ein physischer Server, eine VM (virtuelle Maschine) oder ein Container.

Target machine - Eine Maschine, die wir mit Ansible konfigurieren werden.

Task - Eine von Ansible verwaltete Aktion (dies ausführen, löschen) usw.

Playbook - Die yml-Datei, in die Ansible-Befehle geschrieben und yml auf einem Computer ausgeführt wird.