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
相关推荐
好家伙VCC15 小时前
**发散创新:用 Rust构建多智能体系统,让分布式协作更高效**在人工智能快速演进的今天,**多智能体系统(
java·人工智能·分布式·python·rust
梦幻精灵_cq15 小时前
*终端渲染天花板:文心道法解码——闲聊终端渲染状态一统江山
python
yuanmenghao15 小时前
Linux 性能实战 | 第 18 篇:ltrace 与库函数性能分析
linux·python·性能优化
ValhallaCoder15 小时前
hot100-图论
数据结构·python·算法·图论
Elastic 中国社区官方博客15 小时前
Elasticsearch 8.17.2 升级到 9.2.4 完整升级过程
大数据·运维·数据库·elasticsearch·搜索引擎·全文检索·运维开发
破烂pan15 小时前
Python 实现 HTTP Client 的常见方式
开发语言·python·http
寒听雪落15 小时前
ZYNQ PS HTML服务器和客户端
python
康小庄15 小时前
Java自旋锁与读写锁
java·开发语言·spring boot·python·spring·intellij-idea
NO121215 小时前
使用paddle OCR对带文字的图片转正
python
墨染青竹梦悠然15 小时前
基于Django+vue的单词学习平台
前端·vue.js·后端·python·django·毕业设计·毕设