Hi folks,

First I should probably do a quick introduction.  I'm Mike Erickson and I've been a subscriber to the list for some time, but this is my first post.  I'm running a small startup in Minneapolis where we are building web services using Semantic Web technologies for specific vertical markets (currently semiconductors).  Before this, I spent about a decade doing Embedded Software.  I just saw the post about Puppet and Chef and found it interesting because I've been looking into various server configuration management tools.

Our system runs in Rackspace's cloud using Debian images.  All of our software is written in Python (my own personal habit) using Django as our web framework.  I automatically deploy our software to new server instances using 'fabric'.  Technically I could probably do just about everything I need using 'fabric' or 'fanout' or other similar tools.  However, I like to keep things organized and certain aspects of configuring a newly provisioned server, be it front-end or back-end, really don't belong in 'fabric' scripts.  Thus, I started looking for a proper tool managing server configuration.

From my research it appears that Cfengine is the "grandfather" of configuration management tools.  Then there are some of the "upstarts" such as Bcfg2, Puppet, Chef, and others.

I *really* want to like Bcfg2 as I believe it has some unique and technically superior things going for it.  Unfortunately its documentation is just horrid.  I spent a day with it and may give it another day...but the available docs make it almost impossible (at least for me) to get anywhere fast.  The people on their IRC channel are helpful, but I have a hard time committing to a tool built by a community that can't take the time to write a decent manual.  

I started looking at Cfengine just before I left for 10-days in Africa, and will be checking that out some more now that I'm home.

Does anyone on the list have any thoughts regarding any of these tools?  What have you used in the past?  What do you like/hate about something you have used or are using?

Cheers,
--mike