productsupcom / ansible-dyninv-mysql

Dies ist ein Dynamic Inventory für Ansible, das zusammen mit MySQL verwendet werden kann.

Es wurde geschrieben, weil wir viele Server betreuen und statische Inventarisierungsdateien unseren Anforderungen nicht genügten und wir MySQL mögen.

Verwendung

Rufen Sie das Skript einfach wie folgt auf

ansible-playbook -i mysql.py# oransible -i mysql.py

Einschränkungen funktionieren auch

ansible-playbook -i mysql.py --limit foo.bar.comansible-playbook -i mysql.py --limit groupFoo

Setup

Ich werde den Prozess der Installation einer Datenbank oder der Erstellung der Tabellen nicht erklären, siehe tables.sql für die erforderliche MySQL-Struktur.

Nach der Einrichtung benennen Sie mysql.ini.dist in mysql.ini um, um Ihren Bedürfnissen gerecht zu werden, wenn Sie kein Caching verwenden wollen, setzen Sie es einfach auf 0.

Gruppen

In der Tabelle group legen Sie die benötigten Gruppen und deren Variablen an,

Hosts

In der Tabelle host unter host platzieren Sie die IP/DNS für das System.

Fakten

Unter hostname können Sie einen Wert eintragen, der während des Spiels als Variable inventory_hostname dargestellt wird. Sie können den Namen dieser Fakt-Variable ändern, indem Sie die Variable facts_hostname_var in meinem mysql.ini ändern.

Beziehung zwischen Hosts und Gruppen

Die Tabelle hostgroups bildet die Beziehung zwischen host und group mit zwei FOREIGN KEYS ab.

Kinder

Gruppen können andere Gruppen als Kinder haben, verwenden Sie die Tabelle childgroups.

Hinweis zu Variablen

Dies gilt für host bzw. groupWenn keine Variablen benötigt werden, entweder NULL (tatsächliche MySQL NULL nicht die string) oder {} verwenden.

LICENSE

Leave a Reply