ich auf einer Liste von Hosts mit einer Host-Datei einen ansible Textbuch renne:ansible Textbuch auf mehreren Servern mit unterschiedlichen Vars
[consul]
${HOST1} ansible_ssh_host=${HOST1} ansible_ssh_user=devops ansible_ssh_pass=blabla
${HOST2} ansible_ssh_host=${HOST2} ansible_ssh_user=devops ansible_ssh_pass=blabla
.......so on...
Die Sache ist, dass ich eine andere Variable für jeden Host zu übergeben. Ich kenne die Flagge -e
, die mir erlaubt, eine Variable mit dem ansible-playbook
Befehl zu senden, aber es ist nicht für jeden der Hosts.
Ich bin mit dem Textbuch mit diesem:
ansible-playbook -vvvv site.yml
Wie kann ich eine andere var für jeden Host übergeben?
Danke!
Hinweis: Ich verwende ansible 1.7.1
Welche Art von Variable (Wert) ist das denn? Sie könnten ein Mapping irgendwo in var erstellen, host_vars (group_vars) verwenden, das Inventar abfragen, um Fakten über andere Hosts zu finden usw. – weirdan
Da Sie ausdrücklich sagen, dass Sie eine andere Variable für jeden Host übergeben möchten, sollten Sie es auschecken host_vars, die in Ihrer Version 1.7 verfügbar sind: http://docs.ansible.com/ansible/intro_inventory.html –