Ansible 组中基于 ip 范围的动态组
Dynamic groups based on ip range in Ansible groups
如何在 ansible inventory 组中创建基于 ip 地址范围的变量组?我在不同的位置有两组服务器。我想在每次剧本时创建组,以便剧本在更新的服务器列表中 运行。我已经在我的主机清单中根据分发、生产、开发、测试、质量保证、博士进行分组。
提前致谢
您可以在开始时扫描所有主机,然后根据需要对它们进行分组,例如按网络:
- hosts: all
tasks:
- group_by: key=network_{{ ansible_default_ipv4.network }}
这将创建与您拥有的不同网络一样多的名称为 network_<network>
的群组。但请记住,它需要从所有主机收集事实,因此根据主机数量和连接速度,它可能需要大量时间。事实缓存会加快速度,但无论如何...
如果您手动管理库存文件,请考虑手动指定区域组。
如何在 ansible inventory 组中创建基于 ip 地址范围的变量组?我在不同的位置有两组服务器。我想在每次剧本时创建组,以便剧本在更新的服务器列表中 运行。我已经在我的主机清单中根据分发、生产、开发、测试、质量保证、博士进行分组。
提前致谢
您可以在开始时扫描所有主机,然后根据需要对它们进行分组,例如按网络:
- hosts: all
tasks:
- group_by: key=network_{{ ansible_default_ipv4.network }}
这将创建与您拥有的不同网络一样多的名称为 network_<network>
的群组。但请记住,它需要从所有主机收集事实,因此根据主机数量和连接速度,它可能需要大量时间。事实缓存会加快速度,但无论如何...
如果您手动管理库存文件,请考虑手动指定区域组。