ansbile 怎么把连接的目标 HOST IP 通过变量传递过去

2020-12-29 11:08:48 +08:00
 zealinux

比如:ansible-playbook 新建一个任务,

就是把目标 IP 加到目标机器的环境变量中。 主要不知道该怎么传递这个变量。

1865 次点击
所在节点    Ansible
6 条回复
xcai
2020-12-29 13:41:15 +08:00
ansible_facts {{ ansible_facts['default_ipv4']['address'] }}如果是机器去取其它机器的 IP 再加上 {{ hostsvars[机器名] ansible_facts['default_ipv4']['address'] }} 具体查一下,不知道有无记错。
David1119
2020-12-29 13:53:51 +08:00
命令:ansible-playbook xxx.yaml --extra-vars "your_vars=aaaa"

在 xxx.yaml 里面直接用 {{your_vars}}
zealinux
2020-12-29 14:00:48 +08:00
@David1119 aaa 是什么?

这个是动态的,是连的那个 host,就是那台 ansible_host
ik
2020-12-29 14:01:41 +08:00
{{ansible_ssh_host}}
ik
2020-12-29 14:03:12 +08:00
```
[root@un~]# ansible all -m debug -a "msg={{ansible_ssh_host}}"
45.153.x.x | SUCCESS => {
"msg": "45.153.x.x"
}
109.166.x.x | SUCCESS => {
"msg": "109.166.x.x"
}
```
zealinux
2020-12-29 14:20:03 +08:00
@ik bingo

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/739881

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX