Configuration management comparison - Ansible vs CFEngine vs Puppet vs Chef

Configuration management comparison

Ansible vs CFEngine vs Puppet vs Chef

Here is a comparison of various configuration management tool. It is work in progress as I try to learn some of the newer tools and reflect in how they differ from the old ones.


Feature Ansible Puppet CFEngine Chef Comments
Feature Ansible Puppet CFEngine Chef Comments
Version being discussed Ansible Puppet 3.7.4 CFEngine 2 Chef Comments
Agent agentless, use ssh agent/daemon agent run from cronjob, then exit. config read from shared file system. no push mechanism Chef Ansible is different from the pack. Being agentless maybe reason why loved by HPC admins
Guiding principle Idempotent (but not guaranteed) Define what, not how One engine to rule them all Got Knife? Comments
"Feel" Did it run? Oh we can run it again, just to be sure :) Facts based. Not alternative truth! giant state machine, hard to troubleshoot what state is in from a spagetti combination of classes and conditions Getting stabbed :) I only like to eat, don't like to cook
Adopters HPC? DevOps, Ruby lovers? SysAdmins
Config YAML, Jinja template YAML, CFEngine's own syntax
Module/code sharing Playbook, written in python, perl, bash, etc. They are copied to nodes for execution. Ruby CFEngine 2 felt pretty monolithic, don't remeber seeing plugin modules. CFEngine 3 may have such support. Knife, Recipe
Cloud support AWS, OpenStack, many others Yes No special provision in CFEngine 2 Yes YMMV? :)


Example Commands in Ansible




Example Commands in PSSH

Parallel SSH 





Readings Ansible

Readings Puppet

Readings CFEngine

comments powered by Disqus (and disqus comment count): link w/ disqus count


<-- Please click if you found this site useful ;-)


About me

I have been "hacking" computers for 10+ years now. I started liking to fiddle with OS since college days in FIU, and it is still a hobby when I am not hiking or biking or studying for biotech :-)

This page has links to my other social media profiles.

Drop me a line at G+ or reward me by using this link to get your own dropbox account (we'll both get an extra 500MB of free storage).

Copyright info about this work

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike2.5 License. Pocket Sys Admin Survival Guide: for content that I wrote, (CC) some rights reserved. 2005,2017 Tin Ho [ tin6150 (at) gmail.com ]
Some contents are cached here for easy reference. Sources include man pages, vendor documents, online references, discussion groups, etc. Copyright of those are obviously those of the vendor and original authors. I am merely caching them here for quick reference and avoid broken URL problems.