The State of Open Source System Automation
The days of DIY system administration are rapidly coming to a close. Why? Because the open source tools available are just too good not to use. Presenting Bcfg2, Cfengine, Chef and Puppet.
Appendix – Quick Comparisons
What Language Is The Tool Written In?
- Bcfg2 Python.
- Cfengine C.
- Chef Ruby.
- Puppet Ruby.
How Long Has it Been Around?
- Bcfg2 2004
- Cfengine 1993
- Chef 2009 – currently in beta
- Puppet 2005
How Widely Is It Used?
- Bcfg2 Used at at least 100 sites.
- Cfengine Used in over 5000 companies. Mark’s conservative estimate is over 1,000,000 computers running Cfengine today. There are over two thousand sites with tens of servers; and thirteen sites with tens of thousands of servers.
- Chef The OpsCode Wiki lists 7 organizations using Chef, including VMWare, Etsy and RightScale.
- Puppet Puppet has over 80 organizations using it. Top users are:
- Google: 45K Macs + internal servers.
- Zynga: 80k servers.
- JPMorganChase: 35k servers.
Does It Allow Re-use of Configuration Policies?
Bcfg2 Recipes are in the source code control repo in version 2 but sharing is not easy, group names need to be standardized first.
Cfengine Promises are shared through the Cfengine company which vets and standardizes them in the Community Open Promise Body Library:http://www.cfengine.org/manuals/CfengineStdLibrary.html
Chef Recipes are very actively shared at http://cookbooks.opscode.com/
Puppet Manifests are shared at http://forge.puppetlabs.com/
Learning More, Getting Help.
USENIX Configuration Management Summit 2010