productsupcom / ansible-dyninv-mysql

Det här är en dynamisk inventering för Ansible som ska användas tillsammans med MySQL.

Den skrevs för att vi underhåller många servrar och statiska inventeringsfiler inte uppfyller våra krav, och vi gillar MySQL.

Användning

Kalla helt enkelt skriptet på följande sätt

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

Begränsningar fungerar också

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

Uppsättning

Jag kommer inte att förklara processen för att installera en databas eller skapa tabellerna, se tables.sql för den nödvändiga MySQL-strukturen.

När installationen är klar byter du namn på mysql.ini.dist till mysql.ini för att passa dina behov, om du inte vill använda caching sätter du den bara på 0.

Groups

I tabellen group skapar du de grupper du behöver och deras variabler,

Hosts

I tabellen host under host placerar du IP/DNS för systemet.

Facts

Under hostname kan du fylla i ett värde, detta kommer att presenteras som en variabel inventory_hostname under uppspelningen.Du kan ändra namnet på denna Fact-variabel genom att ändra variabeln facts_hostname_var i min mysql.ini.

Relation mellan värdar och grupper

Tabellen hostgroups kartlägger relationen mellan host och group med hjälp av två FOREIGN KEYS.

Barn

Grupper kan ha andra grupper som barn, använd tabellen childgroups.

Notering om variabler

Detta gäller för host respektive group.Om inga variabler behövs antingen NULL det (faktiska MySQL NULL inte string) eller använda {}.

LICENSE

Leave a Reply