productsupcom / ansible-dyninv-mysql
Jedná se o dynamický inventář pro Ansible, který se používá společně s MySQL.
Byl napsán, protože spravujeme mnoho serverů a statické inventární soubory nevyhovovaly našim požadavkům a máme rádi MySQL.
Použití
Skript stačí zavolat takto
ansible-playbook -i mysql.py# oransible -i mysql.py
Omezení také funguje
ansible-playbook -i mysql.py --limit foo.bar.comansible-playbook -i mysql.py --limit groupFoo
Nastavení
Nebudu vysvětlovat postup instalace databáze ani vytváření tabulek, potřebnou strukturu MySQL najdete v tables.sql
.
Po nastavení přejmenujte mysql.ini.dist
na mysql.ini
podle svých potřeb, pokud nechcete používat mezipaměť, stačí ji dát na 0.
Skupiny
V tabulce group
vytvoříte potřebné skupiny a jejich proměnné,
Hostitelé
V tabulce host
pod host
umístíte IP/DNS pro systém.
Fakta
Pod hostname
můžete vyplnit hodnotu, ta bude při přehrávání prezentována jako proměnná inventory_hostname
. název této proměnné Fakta můžete změnit změnou proměnné facts_hostname_var
v mém mysql.ini
.
Vztah mezi hostiteli a skupinami
Tabulka hostgroups
mapuje vztah mezi host
a group
pomocí dvou FOREIGN KEYS
.
Děti
Skupiny mohou mít jako děti jiné skupiny, použijte tabulku childgroups
.
Poznámka k proměnným
Toto platí pro host
, respektive group
. pokud žádné proměnné nepotřebujete, buď je NULL (skutečné MySQL NULL
, ne string
), nebo použijte {}
.
LICENCE
.
Leave a Reply