Exemplo:
Eu tenho servidores web de um grupo de hosts com 30 hosts. Eu tenho 6 playbooks que têm "hosts: webservers". Eu tenho um novo host que preciso configurar e o adiciono ao grupo de servidores da web. Eu tenho um meta-playbook chamado baseline-web.yml que inclui os 6 playbooks. O meta playbook também tem os hosts: webservers.
Agora ao executá-lo faz todas as ações em todo o host, mas as alterações são apenas no host recém-adicionado.
Posso dar um parâmetro ao programa "ansible-playbook" que anula os hosts definidos: variável?
Como: ~$ ansible-playbook --hosts=newserver5 playbooks/baseline-web.yml
(Que então só seria executado em newserver5, incluindo todos os playbooks incluídos)
@RaymiiOrg Você pode usar --limit
(também conhecido -l
) para limitar os hosts nos quais seu playbook é executado, por exemplo:
ansible-playbook -l newserver5 playbooks/baseline-web.yml
Além disso, não acho que - hosts:
possa aparecer duas vezes, portanto, ter host
no topo E nos sub-playbooks não é AFAIK válido.
As perguntas devem ir para a lista de discussão, não para o rastreador de bugs.
Obrigado a ambos. Da próxima vez eu vou para a lista de discussão.
Comentários muito úteis
@RaymiiOrg Você pode usar
--limit
(também conhecido-l
) para limitar os hosts nos quais seu playbook é executado, por exemplo:ansible-playbook -l newserver5 playbooks/baseline-web.yml
Além disso, não acho que
- hosts:
possa aparecer duas vezes, portanto, terhost
no topo E nos sub-playbooks não é AFAIK válido.