繁体   English   中英

Ansible Jinja2过滤器IP地址

[英]Ansible jinja2 filter ipaddress

我有3台服务器A,B,C。当我在j2模板中运行以下服务器时,它将拉动所有3台服务器。

如何忽略运行模板的服务器?

例如,如果服务器A运行,则应仅获取服务器B和C。

"retry_join": ["
                {% for host in groups['servers']%}
                  {{ hostvars[host]['ansible_ssh_host'] }}
                  {% if not loop.last %}, {% endif %}
                {% endfor %}
              "]

排除inventory_hostname从您的服务器列表:

{% for host in groups['servers'] | difference([inventory_hostname]) %}

您可以尝试进行如下检查,以确认您的循环变量不是当前主机:

{% if host != inventory_hostname %}
  {{ hostvars[host]['ansible_ssh_host'] }}
{% endif %}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM