Machine management in academia

Looking around the web, I’ve been struck by the different techniques of managing machines used. Most folks have a machine they look after – their own laptop perhaps – and there’s a lot of information out there to help. How to reinstall software, how to un-break the operating system after something bad has happened, which configuration settings are needed to make things work. For one machine, that’s fine. The problem comes with scale.

Imagine a single machine needs to be reinstalled – perhaps it’s just had a replacement hard disk – and we have to start from scratch. We’ll have to boot from a CD or DVD to install the operating system (Windows, OSX, Linux, …) and give it some information about how we’d like the machine set up, perhaps a serial number and then we wait a while to let it do its thing. Some time later on, we come back and we have a freshly installed machine, but one without any of the applications we’d like. (No office; Microsoft or Libre, our favourite web-browser isn’t there, how do we check our email?) So we scratch around in our desk drawer and get the CDs out and go through the same routine. Or perhaps we download files from the internet and install them. Each application requires some clicks to go through, then a bit of waiting, perhaps another bit of information from us. Repeat for all the software we need and it’s pretty much game over for the day.

For one machine, that’s doable. For a bunch of machines, this gets tedious and very quickly so.

Big companies do things differently. They buy dozens or hundreds of identical machines, get one set up and configured perfectly with drivers and software, configuration and settings, then clone the hard disk onto all of the others. In fact, really big companies do the setting up of a single machine before the manufacturer delivers all the others and arrange for the manufacturer to ship with the software already set up and ready to go. In three years or so, these machines will be replaced by another batch of identical machines with newer software on and the old machines disposed of. This saves a lot of time – everybody has the same settings, uses the same web browser, saves files from the same version of office and so on.

Academia tends not to do this. I’m not thinking of the provision of teaching rooms or general purpose computers – our Desktop Services systems provided from the UCS operate more like the “big company” routine: specific models of computer are supported and pre-determined pieces of software are provided. Machines used for research are a different matter. By its nature, research is unusual and different. It wouldn’t make sense to insist that a specific type of machine is used – what if an experiment needs a particular type of hardware to interface with some equipment? Or a particular size of case to fit into a rack? Machines for research are much closer to the “individual” machine routine. Here’s the problem: there are about 800 machines in the department. If a machine requires, say, four hours of attention each year on average, we’d have two COs tied up full-time. And, because problems aren’t uniformly distributed in time, there’d be a long wait to get, say, the latest piece of software installed.

Currently, we solve this problem with a few techniques. Installing software is devolved to research groups and, very often, to the person using the machine. Well, that’s good if you want to spend the afternoon faffing around with CDs, downloading files and clicking ‘next’ a lot, but it does lead to software being installed in subtly different ways. Mostly things work but when the don’t, it can take a lot of tracking down to identify the problem.

The way we’re going is to automate things as much as possible. Machines running Linux or Windows can be reinstalled across the network now, which saves much faff, and we’re setting up the infrastructure to install OS X in the same way. In each case, it’s like putting the CD in the drive and starting from scratch, but the answers are already given and the machine installs itself without further intervention. The same is true for applications: WPKG on Windows has been set up to give group IT reps a tool to install commonly used software without hassle. Linux package management already permits us to install software on particular machines or for a particular research group. OS X applications can be managed in a similar way and we’re looking to get this technology onto our network early in 2013.

Rather than hunting around for DVDs, CDs and installation codes, we’re aiming to cover most tasks with a web form – “tick to reinstall windows”, “tick to install Firefox”, reboot the machine and go for lunch knowing that the automated system will have things up and running by the time you get back. We’re not there yet, but we’re heading in the right direction.

This entry was posted in Uncategorized. Bookmark the permalink.