Back to the list

The Automation War

Who, What, Now?

If you aren't aware of it, there's a holy war of sorts going on between some of the most popular automation tools.  Much in the same way,there has been a holy war going on between Unix and Windows since the inception of Windows in 1985.  (There was a war of sorts in the Unix arena that started in the 1990s between Linux and everyone else.  We can all pretty much agree that Linux won that war.)  That war is between the automation tools Ansible, Chef, Puppet, and Salt.  Are there other tools for automation out there?  Sure, such as Perl or Python.  While Python is making headway against Java in becoming one of the most popular languages to use to develop software, it is still far behind the aforementioned tools for automation.


Is It A Battle Or A War?

I've got some experience using all four of those automation tools.  Most of these come from humble beginnings.

  • Ansible was developed by Michael DeHaan in the early 2010s.  At the time, DeHaan worked for Red Hat and saw a need for a tool that could overcome some hurdles people found with Puppet. 
  • Chef was developed by Adam Jacob in the late 2000s.  Jacob originally wrote Chef as a tool for his consulting company so he could use it to control the creation of virtual machines in the cloud.  
  • Puppet was developed by Luke Kanies in 2005.  He wrote it originally to solve a problem with automation tools that he could share with his customers.  
  • Salt was developed by Thomas Hatch in the late 2000s and early 2010s.  Like Jacob and Kanies, Hatch developed Salt to solve the problem of systems management on a large scale.
Is it a battle or a war?  I'd say it a war.   A holy war.  Each tool will have various advantages that will attract fans.  In a previous post, I talked about the death of all variants of Unix other than Linux (and the BSDs).  I think the same will eventually happen with these four tools.  Of course, before that happens, there will be a few more on the stage. 

My Thoughts

Like I referenced in my book Getting Started With Automation Using Ansible, Chef, Puppet, and Salt (to be published later in 2019), I have my favorites amongst these tools.  Each one I like for various reasons.  Here's a short list of what I like about each:

  • Ansible is owned by Red Hat.  So if you work at a shop where the bulk of Linux there is Red Hat, then the natural tool to use is Ansible.  Of the four tools, it is the only one that is agentless.  It uses an SSH connection to connect to clients.  This means adding clients is as easy and updating a configuration file.  Between the GUI and the command line aspect, Ansible is great to work with.
  • Chef's management of servers on the GUI side was well thought out from day one.  You can either use their web-based GUI to manage your servers or have something akin to in-house.   Because of this, it made getting up and running with Chef "super easy and barely an inconvenience."**
  • Puppet is undoubtedly the big boy on the block.  It has been around the longest and is the most popular.  If you look for any job that involves automation, there is better than a fifty percent chance they use Puppet.   
  • Salt is the most well-thought-out of the group.  When I went through installing each of these products, I was immediately impressed with how detailed Salt was out of the gate.  

What Do I Use?

At home and in my current job, I use Ansible.  I ran into some trouble with Puppet when I was first setting up automation at home.  I wanted to run just straight up clients from the vendors (CentOS, Ubuntu) and the version wasn't the same.  So I ended up compiling the software.  Then I ran into problems during that.  In the end, it all worked, but I did have to jump through some hoops.  That's where Ansible comes in as a strong contender:  it requires no client software.  So it became my tool of choice.


** This is a tiny homage to Ryan George and his "Pitch" series on Screen Rant.  If you haven't seen any of them, I suggest pulling up YouTube and visiting Screen Rant and take a look.


 

Copyright © 1997-2020 Rockland Labs,­­ LLC