Virtualization in general, for technicans and business people.

Posted on Wed 27 April 2011 in misc

In this article I will explain what is meant by the buzzword Virtualization and how this can improve your IT environment in the VMware/XEN/KVM context.

One thing which Virtualization is not, it's magic. Many consultants are trying to explain it's as a total new technology and big improvement and a must for everybody and everywhere. Of course they try to explain it this way because they want to sell it. The truth is it's a known mechanism back from mainframe times. One real physical machine is providing more than one service to the client. And not only that it's providing more than one service to a client, for the client it looks like this service is provided by an exclusive machine. For example with its own IP address, own mac address, exclusive CPU, memory etc. This makes it for administrators easier to handle different versions of operation systems and patch levels for special software. In many cases you don't want one operation system to provide all your services like ERP/CRM/Mail/FileSharing/Construction Software/etc. because if there is a patch for the operation system and it's applied, one or more products may stop working because of a incompatibility with this patch. On the other hand you need the patch because of security reasons of another product on the same machine. This happens quite often in reality.

A traditional x86 Intel based server room looks something like this diagram in the most cases:

Traditional Network without Virtualization

One ore more application servers,  a database system, a backup machine, a storage system and hopefully a firewall. This is what many organizations have today and it works. But everybody who has such a configuration knows that if there is a need for a new complexer software in the organization sooner or later someone asks you to buy a new server for that application. No matter that you have 5 of this servers and each of them is just sleeping all day long because it has this ultra fast 4 or 6 core CPU and such a big memory you can save the half world history in it, he tells you to buy a new one because the solution needs it's own machine otherwise you will not have support.  Another bad point in this traditional way of IT architecture is the management. Each Server needs it's own management environment, logins, performance monitoring, system monitoring, update and backup solution. This is the point where Virtualization brings you a real benefit with saving energy costs, software licenses and hardware costs.

Let me explain how Virtualization works on a simple diagram:

Virtualization basic diagram

This diagram shows you that on top of the hardware there works a peace of software here called Virtualization layer which simulates each of the virtual machines that it has it's own hardware. The system installed in this virtual machine don't need to know that it's not installed on a real hardware alone. This is why nearly all software can be virtualized this way. You see if you can consolidate only 2 servers you can save nearly the half of energy and definitely the half of space in your server rack. With the CPUs we have today you can virtualize up to 10 - 12 old servers to one new big machine with for example 2 x 6 core CPUs and a lot of memory. In this case you see what potential this technology has. Turn off 10 servers and run it on just one machine. That's not the way I would do Virtualization. It's nice to save energy but what happens if we have a problem with our one new big server? The complete organization can not work without ERP, EMail etc. and because of this we need a cluster.

Such a cluster configuration looks something like this:

virtualized computercenter example rack diagram

Two big servers, a storage subsystem and a smaller management server. If you compare now the old configuration with the new one you can see there will be still made some points for energy efficiency. That's not the only benefit you should have in focus, for the mature Virtualization solutions like VMware or Citrix/XEN exist a big number of tools and documentation to make the life easier for administrators and system managers. This safes time and brings better reaction times for your IT. In the old network configuration it took days and weeks to setup a new server, in the virtual environment this task takes a few minutes if still enough resources are available. All of the proven solutions on the marked bring well tested cluster functionality and mechanism to improve the availability of your servers and services. This helps you to focus better on your business and delivers a better IT service within your organization. If one of your servers needs to go in maintenance you don't need to shutdown the services, with live migration technologies you can make the selected server free and move all the work to the working server and you don't need to stop your production for example. This is where the Virtualization hits the business people, it is not a new cost factor of the IT, it helps you to consolidate and improve the infrastructure of your company or organization and you can realize it within a normal replacement cycle of your hardware and in most cases you will save a lot of energy costs.