我在机器HostAnsible上使用ansible来配置名为FW1、FW2等的防火墙。
我想监督那些防火墙,所以我有一个这样的任务:
- name: Configure supervision
mymodule:
...
delegate_to: "{{ supervision_host }}"
变量supervisory_host在库存的顶层设置为HostSupervisory。我用调试来检查它:
- debug:
var: supervision_host
它在所有防火墙上都是正确的
任务显示:
FW1 -> HostSupervision(HostAnsible): BlahBlah
并且SSH连接是在HostAnsible而不是HostSupervisory上进行的。
发生了什么?
我在库存中定义了一个变量ansible_host: HostAnsible
,这会打乱委托。问题解决了。