Ansible boucle à travers les vars de groupe dans le modèle

Je suis aux prises avec un motif de traction de l'inventaire de vars dans Ansible modèles, s'il vous plaît aider. 🙂

Je suis la mise en place d'une surveillance de serveur, et je veux être en mesure de configurer automatiquement les serveurs à l'aide Ansible. J'ai du mal avec les boucles dans le modèle pour me permettre de me ce.

Mon semi-travail soluition jusqu'à présent est dans le playbook qui appelle le modèle de tâche que j'ai:

monitoringserver.yml

 vars:
       servers_to_monitor:
         - {cname: web1, ip_address: 192.168.33.111}
         - {cname: web2, ip_address: 192.168.33.112}
         - {cname: db1, ip_address: 192.168.33.211}
         - {cname: db2, ip_address: 192.168.33.212}

modèle.yml

all_hosts += [
           {% for host in servers_to_monitor %}
                   "{{ host.cname }}{{ host.ip }}|cmk-agent|prod|lan|tcp|wato|/" + FOLDER_PATH + "/",
           {% endfor %}
] 

Mais ce n'est pas l'idéal comme je ne peux pas définir l'adresse IP différente pour différents serveurs à surveiller. Comment ont d'autres gens faire cela? Je suis sûr qu'il doit être trivial, mais mon cerveau a du mal avec la syntaxe.

Grâce

Alan

edit: Pour clarifier le modèle résultant ressemble à quelque chose comme ceci:

all_hosts += [
                        "web1|cmk-agent|prod|lan|tcp|wato|/" + FOLDER_PATH + "/",
                        "web2|cmk-agent|prod|lan|tcp|wato|/" + FOLDER_PATH + "/",
                        "db1|cmk-agent|prod|lan|tcp|wato|/" + FOLDER_PATH + "/",
                        "db2|cmk-agent|prod|lan|tcp|wato|/" + FOLDER_PATH + "/",
]

Ce que je voudrais, c'est les valeurs web1/web2/db1/db2 être différentes selon que je suis en utilisant une production de l'inventaire fichier ou un dossier d'inventaire.

source d'informationauteur Alan Hollis