Yes and No, you can run playbooks in parallel, you cannot run roles in parallel in the same play nor playbook.
While all tasks run in parallel and you can do things like async or free strategy this wont parallelize the roles themselves, they get executed in the order in which they are address in the same play. So if you want to run roles in parallel i suggest executing parallel instances of ansible-playbook, parallel, xargs and other utilities make this simple, or via a scheduler cron/incron/awx|tower|aap, jenkins, etc). Theoretically you can write a strategy plugin that does this, but this is far from trivial. A note about mitogen, since it was mentioned, it does not change how parallelization works, but it does accelerate execution in several ways, one is by turning pipelining always on, others have to do with optimizing execution for a threaded model and a 'semi persistent' agent on the target among other things. Before you ask, this cannot be integrated into the main ansible w/o loosing functionality and the threading model is not always an improvement over the forks, depends a lot on the size of the load and how it is structured, it gets very complicated at on point. -- ---------- Brian Coca -- 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 view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/CACVha7cFWdrKb4vDLFvFSi9JNy0pcU1rHfikqxD50ebiY9fGJA%40mail.gmail.com.
