Ansible: Playbooks auf nur einem Host statt dem, was im Playbook steht

Erstellt am 10. März 2013  ·  3Kommentare  ·  Quelle: ansible/ansible

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)

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.

Alle 3 Kommentare

@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.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen