Suchen

Tipps zum Umgang mit Inventories in Ansible Ansible-Inventare im Griff

| Autor: Thomas Joos

Unabhängig davon, ob das Inventory in Ansible mit INI-Dateien oder auf Basis von YAML erstellt wird, lassen sich verschiedene Gruppen bilden, die den Umgang vereinfachen.

Firma zum Thema

Automatisierung im Datencenter (Bild von kewl auf Pixabay )
Automatisierung im Datencenter (Bild von kewl auf Pixabay )
(Automatisierung im Datencenter (Bild von kewl auf Pixabay ) )

Hosts können in Ansible über das Inventory gruppiert werden. Neben selbst definierten Gruppen können Inventories auch die vordefinierten Standard-Gruppen "all" und "ungrouped" nutzen. Diese Gruppen gibt es automatisch, auch wenn keine eigenen Gruppen angelegt worden sind.

Hosts können auch Mitglied in mehreren Gruppen sein. Das kann sinnvoll sein, wenn es Gruppen nach Art der Server gibt und Gruppen für die Position. Ein Weberver kann zum Beispiel Mitglied in der Gruppe der Dateiserver sein und gleichzeitig Mitglied der Gruppe "west". Ein Beispiel für eine solche Gruppierung sieht am Beispiel von YAML folgendermaßen aus:

all:

  hosts:

    mail.example.com:

  children:

    webservers:

      hosts:

        foo.example.com:

        bar.example.com:

    dbservers:

      hosts:

        one.example.com:

        two.example.com:

        three.example.com:

    east:

      hosts:

        foo.example.com:

        one.example.com:

        two.example.com:

    west:

      hosts:

        bar.example.com:

        three.example.com:

    prod:

      hosts:

        foo.example.com:

        one.example.com:

        two.example.com:

    test:

      hosts:

        bar.example.com:

        three.example.com:

Gruppen können auch eingebettet sein. Das bedeutet, dass eine Gruppe und damit deren Hosts Mitglied einer anderen Gruppe sein können, die ebenfalls eigene Hosts und auch andere Gruppen enthält:

all:
hosts:
mail.example.com:
children:
webservers:
hosts:
foo.example.com:
bar.example.com:
dbservers:
hosts:
one.example.com:
two.example.com:
three.example.com:
east:
hosts:
foo.example.com:
one.example.com:
two.example.com:
west:
hosts:
bar.example.com:
three.example.com:
prod:
children:
east:
test:
children:
west:

Über den Autor

 Thomas Joos

Thomas Joos

Freiberuflicher Autor und Journalist