2016-08-01 37 views
1

如何根据安全的库存组中的IP地址范围创建变量组?我在不同的位置有两组服务器。我想根据IP范围创建两个组(两个位置有两个范围)。我的主机库存中已经有基于分发,产品,开发,测试,qa,dr的组。我知道我可以使用group_by创建一个分组。但是,我怎样称呼他们?以及如何为其分配自定义变量名称? - 主机:所有 任务: - GROUP_BY:键=网络_ {{ansible_default_ipv4.network}}基于IP范围的负责任的动态组合

但是我怎么称呼他们?以及如何为其分配自定义变量名称?有没有一种方法可以创建一次组,并将所有主机存储在静态库存文件中。 ?

回答

1

我已在comment回答。

与其他任务一样,您可以使用when声明与group_by
例如:

--- 
- hosts: all 
    tasks: 
    - group_by: key=London 
    when: ansible_default_ipv4.network == '192.168.0.0' 
    - group_by: key=Paris 
    when: ansible_default_ipv4.network == '10.0.0.0'