我需要知道调用ansible的机器的主机名或IP,而不是库存中的主机名或IP。
访问此内容的最简单方法是什么?请注意,我需要在各种主机上执行的任务中使用此变量。
请注意,所有这些都不是有效答案:
- ansible_hostname
- inventory_hostname
答案 0 :(得分:2)
使用查找,它们总是在localhost上执行。
例如:{{lookup("pipe","hostname")}}
如果广泛使用此值,最好先执行set_fact
,否则每次引用时都会执行lookup命令。
答案 1 :(得分:0)
在 set_fact 中使用时:适当使用引号我遇到了引号问题,下面对我有用
controller_host: "{{lookup('pipe','hostname')}}"