Ansible

Inventory Hostgruppen anzeigen/prüfen

Da Ansible Gruppen bei größeren Projekten auch mal unübersichtlich werden können, kann man sich die interpretierte Ansicht auch von Ansible selbst ausgeben lassen:

ansible -i inventory localhost -m debug -a 'var=groups'

Das sieht dann z.B. so aus:

PLAY [Ansible Ad-Hoc] *********************************************************************************************

TASK [debug] ******************************************************************************************************
ok: [localhost] => {
    "groups": {
        "all": [
            "server1.foobar.de",
            "server2.foobar.de",
            "server3.foobar.de",
        ],
        "apache": [
            "server1.foobar.de",
            "server2.foobar.de"
        ],
        "docker_engine": [
            "server3.foobar.de"
        ],
        "elasticsearch": [
            "container1.foobar.de"
        ]
    }
}

PLAY RECAP ********************************************************************************************************
localhost                  : ok=1    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   

 

Schöne Fehlermeldungen mit ansible-playbook

Die Ausgabe der Fehlermeldungen bei ansible-playbook erfolgt standardmäßig als json. Das ist schwer zu lesen. Aber es geht auch schöner.

Dazu ist eine kleine Änderung in der ansible.cfg notwendig. Diese wird von ansible-playbook in folgende Reihenfolge gesucht:

Folgender Eintrag ist zu ändern:

# change the default callback, you can only have one 'stdout' type  enabled at a time.
#stdout_callback = skippy
#stdout_callback = debug
stdout_callback = yaml