我想使用getent wrapper模块来解析/etc/hosts的内容,并将ip地址保存在一个变量中以备后用。如果在/etc/hosts上找到IP,则无法将其隔离
我们这样做是为了检查服务器场上的/etc/hosts是否是最新的,我们将使用此变量根据dns进行验证,如果两个地址不匹配,则更正/etc/hosts。我也尝试过slurp,但没有太多成功。
---
- hosts: all
tasks:
- name: getent hosts
getent:
database: hosts
key: "{{ansible_hostname}}"
register: results
- name: print result
debug:
msg="{{results}}"
- set_fact:
a_host_ip={{ getent_hosts[ansible_default_ipv4.address] }}
- debug: var=a_host_ip我希望在可变a_host_ip中包含ip地址,但实际内容是与ip地址对应的主机名。如何将IP地址保存在变量中。
发布于 2019-02-01 02:36:50
获取IP列表:
{{ getent_hosts.keys() }}要获取单个元素,请执行以下操作:
{{ getent_hosts.keys() | first }}https://stackoverflow.com/questions/54464616
复制相似问题