Beispiel:
Ich habe Webserver einer Hostgruppe mit 30 Hosts. Ich habe 6 Playbooks, die "Hosts: Webserver" haben. Ich habe einen neuen Host, den ich konfigurieren muss, und ich füge ihn der Webserver-Gruppe hinzu. Ich habe ein Meta-Playbook namens baseline-web.yml, das die 6 Playbooks enthält. Das Meta-Playbook enthält auch die Hosts: Webserver.
Beim Ausführen werden jetzt alle Aktionen auf allen Hosts ausgeführt, aber die Änderungen gelten nur für den neu hinzugefügten Host.
Kann ich dem Programm "ansible-playbook" einen Parameter geben, der die definierten Hosts überschreibt: Variable?
Beispiel: ~$ ansible-playbook --hosts=newserver5 playbooks/baseline-web.yml
(Was dann nur auf newserver5 laufen würde, inklusive aller enthaltenen Playbooks)
@RaymiiOrg Sie können --limit
(auch bekannt als -l
) verwenden, um Hosts einzuschränken, auf denen Ihr Playbook ausgeführt wird, z.
ansible-playbook -l newserver5 playbooks/baseline-web.yml
Außerdem glaube ich nicht, dass - hosts:
zweimal erscheinen kann, also ist es AFAIK nicht gültig, host
oben UND in den untergeordneten Playbooks zu haben.
Fragen sollten an die Mailingliste gehen, nicht an den Bugtracker.
Danke beide. Das nächste Mal gehe ich zur Mailingliste.
Hilfreichster Kommentar
@RaymiiOrg Sie können
--limit
(auch bekannt als-l
) verwenden, um Hosts einzuschränken, auf denen Ihr Playbook ausgeführt wird, z.ansible-playbook -l newserver5 playbooks/baseline-web.yml
Außerdem glaube ich nicht, dass
- hosts:
zweimal erscheinen kann, also ist es AFAIK nicht gültig,host
oben UND in den untergeordneten Playbooks zu haben.