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