当前位置:  开发笔记 > 运维 > 正文

如何在Ansible中获取主机专用网络地址

如何解决《如何在Ansible中获取主机专用网络地址》经验,为你挑选了1个好方法。

我尝试过这样的事情:

gather_facts: yes
  tasks:
    - debug: var=ansible_all_ipv4_addresses
    - set_fact:
        man_ip: "{{ item }}"
      with_items: ansible_all_ipv4_addresses
      when: "item.startswith('10.')"
    - debug: var=man_ip

它有效,但我使用docker的服务器有问题,因为docker容器也有开始接口的地址10.x.x.x.

那么,我怎样才能获得主机专用网址?



1> TomDotTom..:

你可以使用ansible_all_ip_addresses事实和ipaddr过滤器.

{{ ansible_all_ipv4_addresses | ipaddr('private') | first }}

注意:您可以查看可用的安全事实ansible -m setup localhost

编辑:你也可以通过ip过滤ipaddr

{{ ansible_all_ipv4_addresses | ipaddr('10.0.0.0/8') | first }}

推荐阅读
手机用户2402852387
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有