3 ms·
Congratulations to the Chef crew! Here's one thing I still am wondering though, being a relatively heavy Puppet user now. What are the big benefits to using Che
by druiid 14y ago
Congratulations to the Chef crew! Here's one thing I still am wondering though, being a relatively heavy Puppet user now. What are the big benefits to using Chef, or would it be mostly just admin choice here? When I was originally deciding upon a CM system I looked at Puppet, Chef and Salt and decided that Salt was too new (even though I know Python), Chef declared everything in Ruby and I had no intention of learning Ruby just to generate server configurations and then finally Puppet, which I found (personally) to be simple to use/learn and didn't require me to directly learn Ruby unless I need to extend the 'language' of Puppet.
- pjungwir 14y agoTheoretically you can use Chef without knowing Ruby, since if you're using pre-existing cookbooks you can just say what to install by listing the recipes in JSON format. But practically speaking I'd say Ruby is essential. It'd be a disaster trying to use others' cookbooks without being able to read the recipes, and almost certainly you'll want to do something they don't cover. On the other hand, perhaps Chef is an opportunity to learn Ruby? Certainly you can be productive with a very superficial understanding of the language, so you could get started pretty quickly. And a Chef recipe is about the flattest, simplest code imaginable.
- druiid 14y agoWell, if you're using Chef and just using pre-existing cookbooks I'd say you take away 90% of the power of a CM system. So yeah, probably using Chef you have to know Ruby, full-stop. For admins whom have a history with Ruby that's not a huge request, but at the same time I question how useful it is to basically require an admin to code in a particular language to build system configurations (And that is the one thing that drew me to Puppet... that while it had a 'language' it wasn't REALLY a language, more a template syntax). I can certain agree with the idea of using Chef as an opportunity to learn Ruby and when the day comes I have some spare time to start then it might be a good place to begin using it. Really though beyond the language aspect, I was wondering what the feature-set that Chef offered over Puppet, things like structural decisions like how nodes are managed, node removal (kind of a sore spot in Puppet right now), etc.
- pjungwir 14y agoI don't know enough about Puppet to compare them, but the impression I got from reading several comparisons a year or two ago was that Puppet had a more mature community and hence better cookbooks, while Chef was better suited to "dynamic" responses, like adding nodes in response to high load. So perhaps Chef has better removal abilities.
- druiid 14y agoWell, the community for Puppet is good, but oddly there are many modules (what Puppet calls a 'cookbook') missing for some relatively trivial things. For instance, I have written about 10 modules now for various system utilities/resources/services now which didn't exist as of yet, or at least were very... ahem... not good. For example, I've basically re-written my own nginx module because the ability to add reverse-proxy caching to server entries didn't exist even in the Puppet Labs nginx module (really, this is a thing)!