我正在将现有多数据中心设置的管理迁移到 Ansible,但我不确定建模它的最佳方法是什么,因为我是新手。
我有三个数据中心 D1、D2 和 D3。在每个中,相同的配置以相同的方式重复:
到目前为止,我制作的主机文件看起来像这样:
# DC1 -----------
[dc_1_webservers]
10.43.0.10
[dc_1_appservers]
10.43.0.20
10.43.0.21
[dc_1_dbservers]
10.43.0.30
[dc_1:children]
dc_1_webservers
dc_1_appservers
dc_1_dbservers
# DC2 -----------
[dc_2_webservers]
10.43.10.10
[dc_2_appservers]
10.43.10.20
10.43.10.21
[dc_2_dbservers]
10.43.10.30
[dc_2:children]
dc_2_webservers
dc_2_appservers
dc_2_dbservers
# DC3 -----------
[dc_3_webservers]
10.43.20.10
[dc_3_appservers]
10.43.20.20
10.43.20.21
[dc_3_dbservers]
10.43.20.30
[dc_3:children]
dc_3_webservers
dc_3_appservers
dc_3_dbservers
[webservers:children]
dc_1_webservers
dc_2_webservers
dc_3_webservers
[appservers:children]
dc_1_appservers
dc_2_appservers
dc_3_appservers
Run Code Online (Sandbox Code Playgroud)
我特意在这里只留下 IP 地址,因为我想了解纯 Ansible 解决方案如何工作,而不是求助于 DNS。
问题是正确填充 nginx 的反向代理上游,以便在运行 nginx 角色并将配置文件模板复制到负载平衡器机器时,只添加每个 …