Vous pouvez accéder à presque tous les faits/variables de l'inventaire en faisant quelque chose comme ceci :
{{ hostvars['foo.example.com']['ansible_eth0']['ipv4']['address'] }}
ou, si vous préférez le faire via un index dans un groupe :
{{ hostvars[groups['collectors'][0]]['ansible_eth0']['ipv4']['address'] }}
Le truc principal est que vous devez collecter les faits pour tous les hôtes/groupes qui vous intéressent. Vous voudriez donc modifier votre playbook qui s'exécute contre le groupe de reporters pour inclure une tâche no-op (factice) qui est appliquée au groupe de collecteurs. Cela forcera Ansible à collecter des faits sur les hôtes collecteurs afin qu'ils puissent être accédés à partir du groupe de reporters. Vous voudrez donc ajouter quelque chose comme ceci au début de votre playbook de reporters :
- hosts: collectors
name: Rassembler les faits des collecteurs
tasks: [ ]
Les crochets vides signifient essentiellement qu'aucune tâche ne sera exécutée, mais cela forcera quand même Ansible à collecter des faits sur les collecteurs afin que vous puissiez ensuite les référencer dans les tâches que vous exécutez contre vos reporters.
Éditer #1
Il m'est venu à l'esprit que je devrais également mentionner qu'à partir de la version 1.8 d'Ansible, il existe une fonctionnalité de mise en cache des faits désormais disponible. La mise en cache des faits repose sur un serveur redis pour stocker les faits entre les exécutions de playbook. Avec cette fonction activée, un playbook peut référencer des faits qui ont été obtenus par un autre playbook qui a été exécuté précédemment. L'exemple donné dans la documentation d'Ansible :
Imaginez, par exemple, une très grande infrastructure avec des milliers d'hôtes. La mise en cache des faits pourrait être configurée pour s'exécuter chaque nuit, mais la configuration d'un petit ensemble de serveurs pourrait être exécutée de manière ad-hoc ou périodique tout au long de la journée. Avec la mise en cache des faits activée, il ne serait pas nécessaire de "redemander" à tous les serveurs pour référencer des variables et des informations à leur sujet.