Home > Sysadminery > Configuration Management

Configuration Management

November 28, 2006

Configuration Management has been a interesting topic to me for quite some time. To me it does a couple of things, not only does it make life as a sysadmin much, much easier. But also it combines scripting and code development with system configuration. Much has been written on the topic in regards to deployment. To me that has been the smallest problem to solve. There are millions of ways to handle deployment. Hand written perl scripts to large software suites all handle the relatively mundane task of getting a config file out to a machine in a controlled and consistent manner. The crux of the problem has always been how to ease the pain of making changes across a ‘mostly’ homogeneous environment. I say mostly b/c even in a cluster situation all X of those machines has minute differences even though they are 95% the same. At the very basest level things like ip address are always different. After working at Red Hat, I came into contact with two different solutions. Both used a class based system to define the ‘roles’ that a given system has (think mail server as a role example). One was a push (using rsync, ssh-keys and a basic class system). The other was a templating engine that heavily uses CfEngine.  They both have their merits but the templating engine in the latter case was really exciting.  It has it’s pains and suffers horribly from organic growth (but what doesn’t), but has been the first thing I’ve seen that really attempts to ease the work by templating configs as much as possible.

One of the downsides to it is that it’s for the most part unreleased.  I wouldn’t call it proprietary but it has no advocate inside of Red Hat that is pushing to release it.  Honestly it probably isn’t ready, it joins in my opinion a long list of great tools that aren’t quite ready to be consumed by the masses.  There is hope though for those admins out there that are looking at the 25+ server mark and wondering how the hell they are going to keep everything updated without going insane.  Recently I found a great paper  that looks to address the overall problem as well as some things that I’ve seen specifically with our solution.

The problem with what Red Hat uses is that it’s really well suited for 50+ machines, but the learning curve is very steep, and initial setup is very time consuming.  The stuff that the guys at Oxford have come up with seems to have a much lower learning curve, much easier setup time, and will still scale very very well into the 100’s of systems range.

Categories: Sysadminery
%d bloggers like this: