Saturday, June 18, 2011

BCFG2: A non-religious Open Source Configuration Management Tool?

Yesterday I was reading a pissing match between Chef and Puppet and I'm starting to think that the only thing more religious than scripting languages (Ruby vs. Python) or web frameworks (Rails vs. Django) is configuration management tools. Just as the case with religious sects that spun off from each other due to theological (or personality) battles, dissatisfaction with cfengine begat Puppet which in turn begat Chef.

Enter BCFG2 which I discovered on Wikipedia's page on Open Source configuration management tools and this great page which compares and contrasts the 4 leading tools. Unlike these tools, this was an organic development project that was developed for internal use at Argonne National Labs and it is written in Python. Also it is non-commercial, unlike it's three other competitors. I don't think these factors are accidental.

Anyway, if you've never heard of it check out the BCF2 project page and some of the videos and see if you agree. I'm only a couple of hours in, but it definitely seems to have some interesting features that differentiate it from the alternatives, besides being a little less religious.

Meanwhile I'm testing it out on a few VMs. What I'm most interested in, is how it supports multiple Linux distributions simultaneous, in particular Debian, Ubuntu, and CentOS.

1 comment:

Anonymous said...

I think the main difference between Bcfg2 and other tools are the thought processes behind them. I've always told people to try each of them (time permitting) and choose the tool that best fits your overall systems management philosophy. I find the Bcfg2 approach of defining the goal state of a machine works really well for some and not so well for others.