In universities, you often buy hardware when you can

October 7, 2010

I like to dream that in a real company, you can go out and just buy server hardware when it's needed. Around here, sadly, it doesn't work that way.

At least in my section of the university, one of the problems is that money for hardware can be what I'll call 'bursty'. We don't have an ongoing hardware budget; instead, we usually get one-time money sort of at random, when funds can be found or liberated from grant funds. Over the long term this averages out acceptably, but it's quite possible for there to be dry spells in the medium term for various reasons.

(Oh, if there is a real need or an emergency, money can be found. But even if there is a real need it may take a bunch of time to get it and irritate a bunch of important people in the process.)

One of the consequences of this is that we tend to buy hardware whenever we have the budget for it if we have any plausible future need for it, even if we don't specifically need the hardware right now. Otherwise, when we actually need it in six months or a year or even more we may find that there is no budget for it and we're stuck (barring a real emergency), or at least we have to deal with various sorts of awkward delays.

The downside of buying hardware early, even necessary hardware, is that we'd usually get a better deal if we waited; computer hardware generally drops in price (and improves) over time. But from our perspective it's much better to have hardware in reserve so that we can roll out capacity expansions smoothly as they're needed even if it results in us getting an objectively worse deal on, eg, hard disks.

(Note that we are generally not doing things that demand leading edge CPU performance or the like, which is one reason this is a viable thing to do. Most of our servers are years old anyways and work just fine for pretty much everything we deal with. Research groups doing heavy computation have much different needs and thus much different buying patterns.)

There are some aspects of this that we could handle better. For example, given that a certain amount of the hardware we buy will sit around unused for significant amounts of time, we should probably make a habit of unboxing everything when it comes in and at least turning it on to make sure it is not dead on arrival. Otherwise we'll someday open a box and be embarrassed to discover that the hardware is DOA and also old enough that the warranty has already expired.

Sidebar: the other reason to buy when you can

The other reason to buy hardware when you can is that it may not be available any more by the time that you decide you want more. Even for normal hardware this can be annoying, because you have to go through a whole evaluation and qualification process to find a replacement. If you actively liked the hardware in question it's even more irritation. And of course you wind up with a mixed environment instead of a uniform one, which complicates your life in various ways.

(Even if you have no formal requirement for competitive hardware purchasing, you can't buy new hardware and deploy it to production without testing it to make sure that it works.)

As a result, we have a tendency to load up on hardware we really like when we find some (especially if the vendor runs an end of quarter bargain sale; we love those, at least when we have the spare budget). We also like building a good spares pool for things that we're likely to expand in the future, such as network switches or the components of our fileserver environment.

(Network switches are one of those things where you will hate yourself a lot if you wind up with fifty different models and varieties.)

Written on 07 October 2010.
« What is going on with Samba's POSIX locking on NFS on Linux
Why I am unhappy with Upstart right now »

Page tools: View Source, Add Comment.
Login: Password:
Atom Syndication: Recent Comments.

Last modified: Thu Oct 7 00:02:54 2010
This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.