I have a deployment of multiple clusters of 4 nodes each with their own load balancer, and I want to update all the clusters in parallel, but apply rolling updates to the hosts in those clusters. This would allow me to update all clusters in a short service window without downtime. The number of clusters and the host IPs change over time, so we will generate an inventory before each playbook run.
This must be a common problem, but I can't find any examples of rolling updates to a dynamic number of clusters! My first thought was to define each cluster as a group, and execute a play against each group with serial set to 1, but I have learned that I can't execute the same play in parallel against different groups, only against different hosts. I considered looping through a big set of variables which define the clusters, and having the inventory only include localhost, but that seems to be missing the point of ansible working against an inventory of hosts and I'm not sure it'd work at all. How can I do this? Is it possible to use AWX to run the playbook in parallel on the controller against a separate inventory for every cluster? -- You received this message because you are subscribed to the Google Groups "Ansible Project" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/b6bd663b-8d50-49bb-84e5-9bab7e80eded%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
