ansible playbook使用jinja2语法渲染inventory下的主机名和IP到/etc/hosts

1. ansible inventory 下面的 hosts内容如下:

bash 复制代码
[all_host]
app1 ansible_host=10.2.162.147 
app2 ansible_host=10.2.162.148
app3 ansible_host=10.2.162.149
app4 ansible_host=10.2.162.150
app5 ansible_host=10.2.162.151

[nginx]
app1

2. hosts.j2内容如下

bash 复制代码
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

{% for host in groups.all_host %}
{{ hostvars[host]['ansible_host'] }} {{ hostvars[host]['inventory_hostname'] }}
{% endfor %}

3. 渲染结果:

bash 复制代码
cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

10.2.162.147 app1
10.2.162.148 app2
10.2.162.149 app3
10.2.162.150 app4
10.2.162.151 app5
相关推荐
2501_9454235420 小时前
用Matplotlib绘制专业图表:从基础到高级
jvm·数据库·python
2301_7938046920 小时前
使用Python处理计算机图形学(PIL/Pillow)
jvm·数据库·python
吴佳浩1 天前
GPU 编号进阶:CUDA\_VISIBLE\_DEVICES、多进程与容器化陷阱
人工智能·pytorch·python
全栈凯哥1 天前
18.Python中的导入类完全指南
python
sunwenjian8861 天前
Java进阶——IO 流
java·开发语言·python
guts3501 天前
图像篡改数据集下载:COVERAGE、CASIA
python·数据集
森林猿1 天前
java-modbus-读取-modbus4j
java·网络·python
2401_879693871 天前
将Python Web应用部署到服务器(Docker + Nginx)
jvm·数据库·python
chushiyunen1 天前
python chatTts实现tts文本转语音、音频
python
FreakStudio1 天前
把 Flask 搬进 ESP32,高中生自研嵌入式 Web 框架 MicroFlask !
python·单片机·嵌入式·cortex-m3·异步编程·电子diy