Como posso incluir um fato ansioso do lado da gestão?

1

(novo para ansible) Estou executando ansible all -m setup em um punhado de hosts para produzir saída JSON para nosso sistema de inventário. Alguns de nossos controles remotos ansible estão em sub-redes diferentes (DMZs, por exemplo). Gostaria de incluir o IP da LAN associado a esses hosts na saída ansible JSON. Como posso fazer isso?

UPDATE: Para esclarecer, gostaria que o endereço 192.168.1.1 ip estivesse na saída de fato de alguma forma. O campo ansible_all_ipv4_addresses e ansible_default_ipv4 na saída contém 10.10.10.1 , o que não é um endereço IP útil para as pessoas que visualizam o inventário de uma perspectiva de LAN.

192.168.1.0/24       192.168.1.0/24
    LAN ----------------FIREWALL
                         |     |
                         eth0  eth1
                         |     |
                         |     +-------DMZ1---------+
                         |                         |
       host1.org.net   > + eth0:1=192.168.1.1      + 10.10.10.1  > host1.org.net
                         |                         |
       host2.org.net   > + eth0:2=192.168.1.2      + 10.10.10.2  > host2.org.net
    
por Server Fault 08.03.2018 / 21:04

1 resposta

0

Uma solução parece ser executar um playbook para preencher um arquivo em /etc/ansible/facts.d/whatever.fact usando a variável "{{inventory_hostname}}" . Quando setup for executado, ele incluirá o whatever.fact na saída JSON. Está aqui para o caso de ajudar alguém: Como posso registrar o inventory_hostname em um arquivo no controle remoto usando um Playbook?

    
por 13.03.2018 / 18:08

Tags