我知道此处的嵌套循环文档:http://docs.ansible.com/ansible/playbooks_loops.html#nested-loops我有3台服务器:说server1,server2,server3。我需要以这种方式运行命令:
在server1上运行命令在server1上运行命令,在server2上运行命令在server1上运行命令,在server2上运行命令,在server3上运行命令]
任何想法我如何在ansible中使用循环来做到这一点?我知道如何使用循环和乘积过滤器运行嵌套循环。但是不知道如何使用Ansible处理我的特殊情况。
取决于数据的结构。例如,剧本可以胜任]
- hosts: server1,server2,server3
vars:
batch001:
- command1: "foo"
hosts: [server1]
- command2: "bar"
hosts: [server1, server2]
- command1: "baz"
hosts: [server1, server2, server3]
tasks:
- command: "{{ item.command }}"
loop: "{{ batch001 }}"
when: inventory_hostname in item.hosts