1
可以說我有類似下面如何在另一個劇本中使用定義的事實/變量?
- name: install nagios client
hosts: client1
roles:
- nagios-client
set_fact:
client_ip: "{{ ansible_default_ipv4.address }}"
client_hostname: "{{ ansible_hostname }}"
- name: register client
hosts: server
vars:
- ip: {{ client_ip }}
- hostname: {{ client_hostname }}
role:
- register-nagios-client
我知道set_fact被綁定到一個主機,不能在另一種使用,也可以得到事實{{ hostvars['client1']['ansible_eth0']['ipv4']['address'] }}
客戶端的IP一個劇本。但是有沒有辦法來定義一個局部變量,可以在yml文件的多個位置引用?
我只是想知道是否有一個自動的方式來使用第二個劇本的'client1'名稱。像局部變量或可以在劇本中的一個地方定義並在多個地方引用的東西。 – pdna
您的示例中的'client1'是主機組名稱(主機模式)。它可能會解析爲匹配組名的單個主機,單個主機不匹配組名或多個主機。您正在嘗試解決XY問題。 – techraf
在我的用例中,它只匹配單個主機(不是組)。 – pdna