productsupcom / ansible-dyninv-mysql
Este é um Inventário Dinâmico para Ansible para ser utilizado em conjunto com MySQL.
Foi escrito porque nós mantemos muitos servidores e arquivos de inventário estáticos não satisfazem a nossa demanda, e nós gostamos do MySQL.
Uso
Simplesmente chame o script como o seguinte
ansible-playbook -i mysql.py# oransible -i mysql.py
Limitações também funcionam
ansible-playbook -i mysql.py --limit foo.bar.comansible-playbook -i mysql.py --limit groupFoo
Setup
Não vou explicar o processo de instalação de uma base de dados ou criação das tabelas, veja tables.sql
para a estrutura MySQL necessária.
Ace setup renomear o nome mysql.ini.dist
para mysql.ini
para atender às suas necessidades, se você não quiser usar o cache basta colocá-lo em 0.
Grupos
Na tabela group
você cria os grupos que você precisa e suas variáveis,
Hosts
Na tabela host
sob host
você coloca o IP/DNS para o sistema.
Fatos
Acima de hostname
você pode preencher um valor, este será apresentado como uma variável inventory_hostname
durante a jogada. Você pode modificar o nome desta variável de Fato alterando a variável facts_hostname_var
no meu mysql.ini
.
Relação entre Hosts e Grupos
A tabela hostgroups
mapeia a relação entre host
e group
usando dois FOREIGN KEYS
.
Crianças
Grupos podem ter outros grupos como crianças, use a tabela childgroups
.
Nota sobre Variáveis
Isto se aplica a host
e group
respectivamente. Se nenhuma variável for necessária ou NULL it (real MySQL NULL
e não a string
) ou use {}
.
Leave a Reply