Sono seduto di fronte a un progetto Ansible abbastanza complesso che stiamo utilizzando per impostare i nostri ambienti di sviluppo locali (più VM) e c'è un ruolo che utilizza i fatti raccolti da Ansible per configurare il file /etc/hosts
su ogni VM. Sfortunatamente, quando vuoi eseguire il playbook per un solo host (usando il parametro -limit) i fatti dagli altri host sono (ovviamente) mancanti.Raccolta fatture forzata su tutti gli host
C'è un modo per forzare Ansible a raccogliere informazioni su tutti gli host, anche se si limita il playbook a un host specifico?
Abbiamo provato ad aggiungere una riproduzione al playbook per raccogliere i dati da tutti gli host, ma ovviamente anche questo si limita a un host dato dal parametro -limit. Se ci fosse un modo per forzare questo gioco a girare su tutti gli host prima delle altre giocate, sarebbe perfetto.
Ho cercato su Google un po 'e ho trovato la soluzione con il fatto che si memorizza nella cache con i redis, ma dal momento che il nostro playbook è utilizzato localmente, volevo evitare la necessità di software aggiuntivo. Lo so, non è un grosso problema, ma stavo solo cercando una soluzione "pulita", solo Ansible, e mi chiedevo se questo sarebbe esistito.
Grazie per la risposta. Questa era la nostra prima soluzione, ma sembra che il caching dei fatti sia l'unica soluzione per questo problema. Sarebbe bello avere qualcosa che possa scavalcare il parametro limite per la raccolta di fatti. – tehK