Ansible: Bye Salt…

I remember looking at Ansible way back when I began building out DevOps solutions but at the time I chose Saltstack over Ansible. Saltstack was still a little buggy as it wasnt even a production release but it was amazingly fast and flexible. Unfortunately, with the Broadcom purchase of VMWare I have become increasingly cautious of Saltstack. Its still a great system but development seems to have slowed and with Broadcom’s changes I feel the future is uncertain. This brought me back to Ansible over ten years later!

A friend of mine had been talking about Ansible for a few years but there was always something I still preferred with Saltstack which kept me from really digging in. Now that I have dug into Ansible I can say there are some things I like more with Ansible and some things that I still think Saltstack does better. While Saltstack has been great at making sure my system configuration is always set in stone Ansible does seem to shine at performing some fairly complex command & control procedures. It is still slower than Salt and Salt was extremely easy because everything is built into the agent which didnt require much in the way of dependencies and made Windows / Unix management a snap but Ansible is extremely flexible. Unfortunately some of that flexibility can also be annoying.

For example, with Salt it was easy to organize exactly where everything was. My CM routines were under /srv/salt and variables were in /srv/pillar. With Ansible you can store variables in just about any location. Nice, for flexibility but you really need to get organized to keep things from getting confusing or messy! Then there are those annoying formatting errors I run into when I name a variable with “-” instead of “_”. It reminds me of the early days of Salt when they were still dialing things in…. Annoying…

Of course there are weird things in Salt I have gotten annoyed with as well but after over ten years I am also used to it so please take my criticism with a grain of salt. 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *