2
Есть ли способ получить частный IP каждого узла?Ansible - получить имена хостов и частные IP-адреса из файла инвентаризации
С этим шаблоном:
{{ ansible_managed }}
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
{% for item in groups['all'] %}
{{ hostvars[item]['ansible_ssh_host'] }} {{ item }}
{% endfor %}
я получаю следующий результат:
Ansible managed
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
127.0.0.1 arithproducer
127.0.0.1 controller
127.0.0.1 restapi
Будучи мой файл инвентаризации:
[control]
controller ansible_ssh_host=192.168.50.3 ansible_ssh_user=vagrant
[servers]
restapi ansible_ssh_host=192.168.50.5 ansible_ssh_user=vagrant
[producers]
arithproducer ansible_ssh_host=192.168.50.4 ansible_ssh_user=vagrant
[services:children]
servers
producers
Идея заключается в том, чтобы получить эту информацию, так что я могу заполнить файл /etc/hosts/
в узле управления
испытано. Работает нормально (т. Е. Создает IP-адреса, указанные в файле инвентаризации). У тебя что-то не так, но в этом нет. – techraf