productsupcom / ansible-dyninv-mysql
Dit is een Dynamische Inventaris voor Ansible om te gebruiken in combinatie met MySQL.
Het is geschreven omdat we veel servers onderhouden en statische inventaris bestanden niet aan onze vraag voldeden, en we houden van MySQL.
Gebruik
Neem het script gewoon op als volgt
ansible-playbook -i mysql.py# oransible -i mysql.py
Beperkingen werken ook
ansible-playbook -i mysql.py --limit foo.bar.comansible-playbook -i mysql.py --limit groupFoo
Setup
Ik zal niet het proces uitleggen van het installeren van een database of het maken van de tabellen, zie tables.sql voor de benodigde MySQL structuur.
Eenmaal ingesteld, hernoem mysql.ini.dist naar mysql.ini naar uw behoefte, als u geen caching wilt gebruiken, zet het op 0.
Groups
In de tabel group maakt u de groepen aan die u nodig heeft en hun variabelen,
Hosts
In de tabel host onder host plaatst u de IP/DNS voor het systeem.
Feiten
Onder hostname kunt u een waarde invullen, deze wordt tijdens het afspelen als variabele inventory_hostname gepresenteerd.U kunt de naam van deze Feiten variabele wijzigen door de facts_hostname_var variabele in mijn mysql.ini te veranderen.
Relatie tussen Hosts en Groepen
De tabel hostgroups brengt de relatie tussen host en group in kaart met behulp van twee FOREIGN KEYS.
Kinderen
Groepen kunnen andere groepen als kinderen hebben, gebruik hiervoor de tabel childgroups.
Opmerking over Variabelen
Dit is van toepassing op respectievelijk host en group.Als er geen variabelen nodig zijn, maak deze dan NULL (de eigenlijke MySQL NULL niet de string) of gebruik {}.
Leave a Reply