If you have even a passing interest in IT then you have no doubt by now
heard about virtual servers and virtualisation, which is a technique
where a number of “virtual” computers all run on the one physical
system. And although you might do this on your desktop, it is mainly
taking hold in the back office where a number of servers are
“virtualised” and run on one piece of server hardware.
Conceptually this isn’t a new idea – we have been doing this sort of
thing since mainframe days. But virtualisation for Windows and Linux
systems is now becoming big business for lots of reasons. The central
argument around virtualisation is a cost reduction one. This comes
through in a number of ways:
-
Reduction in server hardware prices – If one piece of server hardware
can do the job of 10 servers you have saved yourself the cost 9 pieces
of hardware.
-
Savings on Environmentals – One server, even if it is running a full
tilt (computers use more electricity and produce more heat when busy)
will use less energy than 10 servers, and will produce less heat (so
less air conditioning etc).
-
Disaster Recovery Planning – Virtualisation offers some savings if you
need a standby site for DR – it’s kind of complex so if you want more
details ask us for an explanation.
-
There may also be savings in the systems management process as
virtualisation (and the tools that come with it) make certain tasks
more time effective for IT staff.
That’s the good news. If virtualisation is done correctly and
appropriately it can save you money. If it is done where it isn’t
appropriate, is poorly executed, or if you are just unlucky it can
actually cost a lot more than it saves. Picking when it is appropriate
is important, and it isn’t necessarily something the person trying to
sell you virtualisation will tell you. This isn’t just us saying this –
a number of big shops around town have either partially, or fully rolled
back virtualisation projects dues to unexpected difficulties.
So, lets consider some of the things that influence whether or not
virtualisation is a good fit.
No Free Lunch
Virtualisation tends to be a good solution for situations where your
servers don’t do very much. So if you have 10 web servers that sit
around largely idle then using virtualisation to collapse them onto one
piece of “tin” (that’s a term we use for a physical server in case you
hear it in conversation) might be a good solution.
But if you have 3 database servers that are flogged within an inch of
their life then you are going to have to buy a much more powerful piece
of hardware if you wanted to try and collapse them. This is going to
affect your Return On Investment (ROI) position.
This can lead to a shop being exposed to the laws of diminishing returns
in terms of buying hardware. To break that down simply a $5,000 server
won’t be twice as fast as a $2,500 desktop (although it will probably be
a good bit more reliable), and a $10,000 server won’t be twice as fast
as the $5,000 server. So, if you have ten $5,000 servers, which are
running at full tilt, you will probably have to spend a lot more than
$50,000 to achieve equivalent performance in a single piece of hardware.
However, servers are not normally run that hard, and it is this fact
that tends to make virtualisation economically viable. Normally you have
ten $5,000 servers, each of which run at somewhere around 10-20% of
capacity. You can replace those ten servers with one $20,000 server,
which isn’t as powerful, but is powerful enough.
So, virtualisation is a better prospect for servers that are lightly
loaded than for systems which are heavily loaded.
Understanding the Cost Model
Saving money on hardware sounds great, but is that really where most of
your costs are? To get a sense on this it’s important to understand the
Total Cost of Ownership (TCO) of a server over its lifetime.
TCO is made up of the following things grouped by scale of cost:
High:
-
Support (wages or fees for the people that make the server work make
sure that backups work etc)
-
Downtime (wages of those people that can’t work when the server is not
up)
-
High-end Business Specific Software.
Medium:
-
Business Specific Software (CRMs, etc).
Low:
-
Commodity Software (Windows etc)
-
Environmentals (Electricity, Air Conditioning, Rack Space).*
-
Hardware.*
We’ve put an “*” next to the costs that virtualisation will reduce.
Notice anything? Now there are arguments that virtualisation can reduce
support costs and downtime. There are also arguments that say it can
increase both of these. Which is true? It depends on context, and to
some extent on whether or not the person appraising it is trying to sell
virtualisation or not.
In the worst case we have seen organsations switch substantially to
virtualisation, when they paid their outsourcer a fixed fee per server
per month for support. The outsourcer didn’t reduce their server support
charges significantly (they argued that supporting a virtualised server
was no cheaper), and the outsourcer pocketed substantial money from the
“move to virtualisation” project. Worse – the virtualised servers
performed worse than the previous hardware based servers. In some
circumstances the customer actually needed more virtual servers than
they had physical ones previously. The result of this was that the
support charges of their virtualised environment was more than the
support charges on the real “tin” they had before, and the hardware
savings were not enough to make up for the difference.
Complexity
Virtualised environments tend to be more complex than ones with normal
servers, for a number of reasons.
-
Often more complex, higher end hardware is required. Dedicate Storage
Area Networks (SAN) are an obvious example here
-
Server management now has another dimension to it – which “real”
server do the virtual servers exist on – this might seem trivial but
we have seen it cause problems
-
Another skill set is required to support the virtualisation product.
These are the foreseeable complexity impacts from virtualisation.
However, the unforseen ones are in many ways worse.
Virtualisation tends to reduce the tolerances within your environments.
Some examples include high dependency on having the exact firmware
revisions and drivers for particular hardware, never being able to
extract the IO performance you should get, network latency blowing out
when there is seemingly no explanation etc. Now, you don’t need to know
what these mean particularly to assist your decision making, but you
need to be aware that some of simplification that virtualisation may
give you will be traded off against some fairly high end esoteric
problems which will require time and effort to resolve, and may in some
extreme cases not have economically viable fixes.
Mid-Range Explosion
There is another potential drawback to virtualisation with respect to
costs, and not one that necessarily is immediately apparent. It starts
with a phrase during the sales presentation something along the lines of
“so when you need a new server you just click, drag, click, and there is
a new server, and it cost you next to nothing”.
Now that seems well and good, but as we have already discussed most of
the cost of owning a server comes in the support phase. So saving you
some deployment costs is great, saving you some hardware costs is great,
but if it leads to an uncontrolled proliferation of servers (and we’ve
seen this too) the “ease” with which new servers can be deployed
actually starts to hurt a business.
This is a bit of “with great power comes great responsibility” type
thing. If an organisation has a mature outlook, and doesn’t create
servers willy nilly, still exercises effective change control, etc etc
then this ability to commission servers quickly can be a great boon. If,
however, they don’t exercise effective control, servers are run up on a
whim, there is no disciplined management of systems then virtualisation
can become an enabler to many poor practices, and before the
organisation knows it the farm of 20 servers that it had is now 50 and
increasing.
So...
We are not trying to say don’t use virtualisation. Virtualisation can be
a fantastic thing that does give real savings. But it is very easy to be
seduced by some of the amazing features that virtualisation offer,
without considering the downsides, or more importantly exactly how
virtualisation is going to improve the efficiency of your organisation.
Also, at its core, virtualisation is about saving money on IT, not
saving money with IT. That’s fine – in hard times everyone needs to
tighten their belts, but it does perhaps reflect an industry looking
inwards at its own problems and coming up with a neat gadget to suit its
own needs, rather than outwards figuring out how to make other parts of
the business more efficient.
So make sure you take some advice, independent of the virtualisation
sales people, about where it is a good fit for your organisation.
Posted by
Clem at
3:59 PM
Edited on: Thursday, August 13, 2009 3:19 PM
Categories:
Business,
Government,
IT Management,
Strategy and Analysis