Advantages of Virtualization
What is virtualization and do I need it?
While some will roll their eyes and say this is nothing new, virtualisation (or for our American cousins Virtualization) is certainly one of the buzz words in the IT industry right now. So what is it? Well in basic terms it’s a way to make a better use of your hardware investment. You’ve just spent x thousand pounds on a shiny new server with enough computing power to take us to Mars and back. So what are you going to do with it? Maybe use it to share a few files? Publish some webpage for your intranet, or maybe run a database or two. The world’s your oyster, but the thing is a lot of the time, your investment is sat twiddling its electronic thumbs, and if you want to do more than one of these things usually you have to just buy another box to run it.
So here’s where all the hype actually starts to save you some money. Just think if you could take each of your separate servers and run them on the same physical box soaking up some of that spare computing power, but with each one still running, as far as your users are concerned, as they do now on separate boxes. Well you can, it isn’t hype and you’ve been able to do it for a while. The only thing that’s really changed is that now mainstream computer hardware lends itself to the technology – (noticed all the TV ads for dual and quad core CPUs?), and that the software is reaching a level of maturity that you can trust it not to fall over every five minutes. The concept really has been round for years though, IBM mainframe ops will be familiar with VM/ESA and a quick Google search reveals roots dating back in the 1960s.
Who’s Using It?
In my experience there are three beneficiaries from this new technology. The first fits neatly with the scenario above, several servers into one box does go. They don’t even need to all run the same operating system, so you could share a box for your Windows Domain Controller, Fileserver, and Exchange Server, then top it off with a Linux based intranet, and maybe a legacy OS/2 app for good measure. A simple cost saving argument, less hardware, less power required to run it, less to maintain etc.
The second are those still running legacy apps on old hardware. Ever tried to run DOS or OS/2 on current servers? You have?? Well for those that like to get out more, you’ll know it’s becoming increasingly difficult and often you’re forced to continue running on old equipment with the associated maintenance worries. One of the solutions is to virtualise the environment and then run it on a new machine. The hardware is all emulated to the virtual machine so if it works now, you can protect the configuration for the future. It doesn’t work for everything – I’m not convinced you’ll get very far with an old Irma card or a Multiprotocol adapter but it’s a way out for some.
Thirdly development and testing will gain great benefits from virtualising. It’s easy to deploy several different setups without having to have several machines on your desk. Many of the popular virtualisation environments allow you to take snapshots so you can quickly rollback a configuration when things go wrong, and cloning a machine is as simple as copying a few files.
So Who’s Doing It?
Everyone, all the big hitters including Microsoft, VMware, IBM, Sun and others. In the typical server room you’re more likely to trip over Microsoft or VMware.
For the desktop there’s 2 great solutions I’ve tried, Microsoft Virtual PC 2007, and VMware Workstation. Both run on top of our existing desktop operating system. I used VMware Workstation for a while until Vista became my preferred platform at which point I made the switch to VPC. To be honest there’s not a lot between them but I prefer VPC for development probably because most of my work is using Microsoft tools. In both cases you can create virtual disks that are simple to copy or move around and a reasonable dual core laptop is capable of running my development environments which are a mix of Windows 2003/2008/XP, Visual Studio and SQL Server in several flavours plus a copy of Suse Linux Enterprise. At the minute VPC is free, but VMware Workstation isn’t.
For the server from Microsoft either Virtual Server 2005 if you’re running Windows 2003 as a base platform which I personally wasn’t keen on, or the new HyperV based host using Windows 2008 as a base with no GUI. Watch out for my installation note on HyperV in the next article. HyperV is included with Windows 2008 provided you don’t select the “Without HyperV” option, or you can download it from the Microsoft Download Centre. VMware offer 2 server options, a free version for simple deployments, or their enterprise ESX server which will cost you. ESX Server has a few bells and whistles above the Microsoft HyperV, particularly aimed at slightly larger enterprises or those requiring a little more resilience. VMotion is one of their technologies that allow you to move virtual machines from one physical box to another – even whilst it is running. It’s very impressive to see it in action. Other stuff like ESX ranger makes taking snapshots and backups of whole machines very simple. For me, if you’ve only got 3 or 4 servers go for HyperV, if you have more go for VMware ESX Server – but keep a close eye on Microsoft, they’re catching up fast.
Okay That All Sounds Great But Where’s The Rub?
Really it’s common sense. The first issue is resilience. Make sure you get a box with redundancy built in – power, disks, controllers etc. If you lose a box you take out more than one server. Make sure you get a good maintenance plan. Secondly is that this won’t suit every situation. If you’ve got an application that is resource hungry, you can’t expect it to run as well if you virtualised it – there is some performance overhead, it’s not massive but it is there.
In the next article I’ll cover installation of the new Microsoft HyperV host and how to deploy virtual machines.
About the author
Paul Sheperia is a software developer and technology consultant, the founder of Applaud Web Solutions www.applaud.uk.com and joint owner of the successful tutorial site wipeout44.com