data on how slow ansible actually is when compared with Puppet authored by anarcat's avatar anarcat
...@@ -455,6 +455,15 @@ developers", might as well add a few key references: ...@@ -455,6 +455,15 @@ developers", might as well add a few key references:
* [tags](https://docs.ansible.com/ansible/latest/playbook_guide/playbooks_tags.html) can be used to run a subset of a playbook but also skip * [tags](https://docs.ansible.com/ansible/latest/playbook_guide/playbooks_tags.html) can be used to run a subset of a playbook but also skip
certain parts certain parts
Finally, Ansible is notoriously *slow*. A [relatively simple Ansible
playbook](https://salsa.debian.org/anarcat/prometheus.debian.net) to deploy Prometheus runs in 44 seconds while a
fully-fledged Puppet configuration of a production server runs in 20
seconds, and this includes a collection of slow facts that takes 10 of
those 18 seconds, actual execution is nearer to 7 seconds. The Puppet
configuration manages 757 resources while the Ansible configuration
manages 115 resources. And that is with [ansible-mitogen](https://packages.debian.org/unstable/ansible-mitogen): without
that hack, the playbook takes nearly two minutes to run.
In the end, the main reason we use Fabric instead of Ansible is that In the end, the main reason we use Fabric instead of Ansible is that
we use Puppet for high-level configuration management, and Ansible we use Puppet for high-level configuration management, and Ansible
conflicts with that problem space, leading to higher cognitive conflicts with that problem space, leading to higher cognitive
... ...
......