我想运行一个剧本,其中包含我使用group_by模块动态创建的多个主机组上的某些角色。在多个主机组上一次运行一个剧本
我能够像下面的例子那样做(ping替换我的实际角色)。
我想知道是否有办法在循环中分别运行每个组,而不是列出所有实例ID。我不想为每个实例ID创建一个重复行。
这里的目的是一次部署到每个数据中心的一个实例,而不是使用需要很长时间的低串行运行。
可能有不同的做法,我不想在库存中为每个instance_id也创建静态组。
---
- hosts: tag_type_edgenode
tasks:
- group_by: key=instance_id_{{instance_id}}
register: dyn_groups
- hosts: instance_id_1
tasks:
- ping:
- hosts: instance_id_2
tasks:
- ping:
- hosts: instance_id_3
tasks:
- ping:
- hosts: instance_id_4
tasks:
- ping:
第一个选项工作得很好。它通过组命令主机运行。 –