Ansible 如何创建与组a(主机除外)匹配的模式;“测试主机”;B组呢?

Ansible 如何创建与组a(主机除外)匹配的模式;“测试主机”;B组呢?,ansible,Ansible,我有两组服务器A和B,我需要排除的其中一个服务器在A组中 我尝试了以下模式: GroupA:!test-host,GroupB 这会导致“没有匹配的主机” 我该怎么做呢?你可以 使用动态分组(groupbymodule)创建新组 使用预期要运行的主机列表预计算变量: 组变量/all.yaml: mygroup: '{{ groups.foo|difference(groups.bar) }}' 播放: 或者,如果主机在特定组中,您可以终止主机的播放 - name: Stop doing th

我有两组服务器A和B,我需要排除的其中一个服务器在A组中

我尝试了以下模式:

GroupA:!test-host,GroupB
这会导致“没有匹配的主机”

我该怎么做呢?

你可以

  • 使用动态分组(
    groupby
    module)创建新组
  • 使用预期要运行的主机列表预计算变量:
  • 组变量/all.yaml:

    mygroup: '{{ groups.foo|difference(groups.bar) }}'
    
    播放:

  • 或者,如果主机在特定组中,您可以终止主机的播放

    - name: Stop doing this for bar
      meta: end_host
      when: "'bar' in group_names"
    
  • 你可以

  • 使用动态分组(
    groupby
    module)创建新组
  • 使用预期要运行的主机列表预计算变量:
  • 组变量/all.yaml:

    mygroup: '{{ groups.foo|difference(groups.bar) }}'
    
    播放:

  • 或者,如果主机在特定组中,您可以终止主机的播放

    - name: Stop doing this for bar
      meta: end_host
      when: "'bar' in group_names"
    
  • 库存

    shell>cat主机
    [A组]
    测试1
    测试2
    测试主机
    [B组]
    测试3
    测试4
    
    还有剧本

    shell>cat pb.yml
    -主持人:groupB:groupA:!测试主机
    任务:
    -调试:
    var:ansible\u play\u hosts\u all
    跑一次:对
    
    给予

    shell>ansible剧本-i主机pb.yml
    确定:[test3]=>{
    “ansible\u play\u hosts\u all”:[
    “测试3”,
    “测试4”,
    “测试1”,
    “测试2”
    ]
    }
    

    使用剧本中的
    -hosts:all
    ,命令会给出相同的结果

    shell>ansible剧本-i主机-l'groupB:groupA:!测试主机的pb.yml
    
    库存

    shell>cat主机
    [A组]
    测试1
    测试2
    测试主机
    [B组]
    测试3
    测试4
    
    还有剧本

    shell>cat pb.yml
    -主持人:groupB:groupA:!测试主机
    任务:
    -调试:
    var:ansible\u play\u hosts\u all
    跑一次:对
    
    给予

    shell>ansible剧本-i主机pb.yml
    确定:[test3]=>{
    “ansible\u play\u hosts\u all”:[
    “测试3”,
    “测试4”,
    “测试1”,
    “测试2”
    ]
    }
    

    使用剧本中的
    -hosts:all
    ,命令会给出相同的结果

    shell>ansible剧本-i主机-l'groupB:groupA:!测试主机的pb.yml
    
    有没有办法创建一些模式,我可以使用--limit?是的<代码>--限制“foo:!条形图“。是否有任何方法可以为此创建一些模式,我可以使用--limit?是的<代码>--限制“foo:!条形图“。