Benutzer-Werkzeuge

Webseiten-Werkzeuge


ansible

Dies ist eine alte Version des Dokuments!


Begriffe

Begriff Erklärung
FactsEigenschaften eines Systems.

Können über das „setup“-Modul aufgelistet werden.

Gegen diese kann gematcht werden um Befehle zum Beispiel nur auf Maschinen mit bestimmten Eigenschaften auszuführen.
InventoryListe aller Hosts, ggf. gruppiert um sie als Gruppe anzusprechen
TasksAufruf eines Moduls um eine bestimmte Aufgabe durchzuführen
PlaybookSammlung von Tasks die als ein Satz ausgeführt werden

Ad-Hoc-Kommandos

  • Befehle die sofort und ohne Playbook ausgeführt werden

Syntax:

ansible <Host-Gruppe> -i Hostdatei -u <Login-User> -m <Modul> -a "<Optional Argumente>" -b 
  • -b sorgt ggf. dafür das man root wird (wenn der Login-User ein anderer ist) (ich nehme an sudo)

Play-Book

  • Führt einen Satz von vorher definierten Befehlen und für bestimmte Host-Gruppen aus
ansible-playbook <Play-Book> -i <Pfad zur Host-Datei> -u <Einloogen als>

Aufbau

  • Geschrieben in YAML
tasks:
    - name: <somename>
      <modulename>:
          <parameter1>: <value1>
          <parameter2>: <value2>
    - name: <somename>
      <modulname>:
          <parameter1>: <value1>
          <parameter2>: <value2>
  • Tasks ist ein Dictionary-Eintrag der eine Liste mit den Tasks enthält
    • jedes Listenelement in tasks enthält die Beschreibung eines Tasko
      • jedes Task-Listenelement enthält ein Dictionary
      • der name-Key enthält einen frei definierbaren Namen als Value
      • der modulename-Key muss der Name des Moduls sein mit dem der Task ausgeführt werden soll
        • dieser wiederum enthält ein Dictionary welches die Parameter des Moduls als Dictionary-Einträge enthält

Module

setup

Sammelt alle bekannten Facts über die entsprechende Maschine.
Das kann später benutzt werden um nur bestimmte Maschinen (auf die bestimmte Facts zutreffen) anzusprechen.

ping

Ping die Maschinen die angegeben wurden

Inventory

  • Datei in der alle Devices stehen
  • ggf. mit Name und Gruppe
    • dadurch lassen sie sich in den Playbooks mit Name oder Gruppe ansprechen

Gruppen:

[Gruppenname]
Einträge

Variablen-Sektionen:

[Gruppenname:vars]
Variable=Wert
  • Der Gruppenname kann „all“ sein → in diesem Fall bezieht es sich auf alle Gruppen
ansible.1538043160.txt.gz · Zuletzt geändert: 2018/09/27 12:12 von root