Monday, September 22, 2008

Baking and Configuration Management

Next year the National Library will decant from our current building so it can be redeveloped to become a new generation National Library. This is pretty exciting news for the organisation and also exciting for me as it prompted a review of our technical team’s configuration management practices. This may not sound like fun but as a list-making, paper-stacking, geek-girl the idea of digging deeply into how my team manages our technical information - and how I can design ways to make it transparent, accessible and safe - puts a smile on my face. I hope that this will be the first in a series of posts that details the project as it progresses.

Last week I wrote a Configuration Management Policy. It politely states:

“The goal of Configuration Management is to provide one authoritative source of configuration information… the configuration information will support availability through providing the correct information at the correct time to underpin sound decision making, change control, capacity planning and disaster recovery.”

In plain speak? We need to know enough about our environment to be able to move all of our technology to a new home while continuing to provide our digital services. We also need to be able to rebuild and recover all of our digital services in the case of a disaster (a big earthquake, bomb or fire takes out our computer room).

To achieve this I think we need to know:

  1. What we have (identification & baseline of "configuration items" or CIs)
  2. What it looks like at any point in time (change control followed by audits called "status accounting" and "verification" )
  3. What services each CI is part of
The real goal is to avoid this, especially if it is my phone number listed on the sign:

The Proof is in the Pudding

So how would I define Configuration Management? It is a process that IT uses to manage and track information about the technology in their environment. This can be anything from a laptop to a server to a script. CM can be used to manage hardware, software, documentation and processes. Sounds dull? Don’t stop reading yet…

To use an analogy my mother would be proud of, CM is like the recipe for creating an IT environment. If the Library’s technical environment were a cake then we would need to know the exact amounts of butter, flour, baking powder, sugar and eggs that are needed to create this cake in order to get a tasty cake each time (repeatable outcome).

But if I change the amount of butter (more please!) then I may need to subtract one egg or the mixture will become too soggy and wont rise. This could be seen as a dependency between butter and eggs. If we are making a cake together and I put in twice the amount of butter but don’t tell you and you put in the normal number of eggs we will get a soggy cake. If I tell you that I have changed the recipe (our configuration item), and maybe even write up a new one or annotate the old one (change control), then we get a moist and delicious cake.

As far as I can tell Configuration Management is pretty similar to baking. You take a UNIX host, some software, a couple of front end servers, a load balancer, some data, some webpage code, a network, electricity, connectivity and mix them all together and presto! - you have a website that people can visit and find information important to their lives. Tasty, delicious information.

If for some reason we change one of the website’s ingredients (take out a front end server) it can become soggy and inedible (or inaccessible). To fix this problem (incident and problem management) we will need to know what ingredients the website is made of, what changes were made to them and how they relate to the other ingredients. This is where you would use your configuration management information and if it had been managed correctly - change control - then you can be assured that it is correct. (This is especially important if you have twenty busy IT people baking a cake. Although to be honest they seem to prefer sausage rolls).

So wish me luck. I have just finished the planning and policy stage of the project and am entering the phase where I open up the pantry and try to identify all of our ingredients. I have my clipboard at the ready.

If you want to find out some more about CM this would be a good place to start:

Configuration Management - Wikipedia or here
ITIL - Wikipedia

0 comments: