Richard Bucker

Chef and Puppet have their place - but not everywhere

Posted at — May 6, 2012

I have been following Chef and Puppet for a while and I have yet to get a working installation. Chef is probably a better choice for a number of reasons but puppet seems to have the corporate mindshare.The target systems I’m deploying are credit card systems and the one thing that is uber important is that the transactions be 100% predictable and reproducible. So the notion of hot-plugging the erlang way is not acceptable.Therefore one key feature is going to be click-triggered updates so that the (a) the entire system is not brought down at once (b) humans are monitoring when the upgrades are taking place (c) and if there is a problem it can be rolled back.One very serious drawback of Chef and Puppet is their use of ruby. Ruby is not installed by default on all platforms and as such, even with RVM, is a challenge to manage on it’s own.Finally, while there is at least one dead tree volume out there for puppet, they produce commercial and community editions. This is another set of hurdles because they offer prepackaged recipes for the commercial version and the community recipes are not reliable.