How to Speed Up Ansible Playbooks
If you’re using Ansible to maintain server configurations, you’re probably quite aware that speed is not something often used to describe Ansible. But I recently came across a plugin that had an amazing 82% performance improvement. And it took a single command and two lines in the ansible.cfg.
The plugin is Mitogen, more specifically Mitogen for Ansible.
On my Ubuntu Ansible controller server I installed it with pip3 install mitogen
, then added these two lines to ansible.cfg:
strategy_plugins = /usr/local/lib/python3.8/dist-packages/ansible_mitogen/plugins/strategy
strategy = mitogen_linear
Now a simple playbook that used to take 45 seconds takes 7 seconds. And a larger playbook that used to take ~3 1/2 minutes finished in just over 32 seconds. It’s rare to get such a massive performance improvement without any downsides (at least none I’m aware of).
So if you’re a fellow Ansible user, I highly recommend adding Mitogen.