Tarry pointed out an interesting question on Linkedin :
CIOs and IT Managers: Are you willing to adopt virtualization now?
I fully agree with him about the challenge to adopt to virtualization today. It adds another layer of complexity to the IT infra structure which current tools are not ready to manage in a flexible and transparent way for the system-administrators.
Nowadays a common data-center is normally still very static, powered by lots of physical systems with a custom installation, configured and maintained by a couple of loosely connected tools.
Virtualization claims to provide the option to move to an appliance-based deployment via virtual machines to ease-up deployment and to better use the resources of the data-center. Since bringing up a virtual machine more or less just requires space on a storage for the virtual-disk the need for high-end NAS and SAN data-storage systems raises.
On the other hand virtualization adds another level of complexity.
Systems and services migrated to virtual machines still needs to be setup, monitored and maintained just in the same way as for physical servers.
With a raising number of servers (physical and virtual) it gets more hard to fulfill this task in a successful and efficient way.
Migration itself (e.g. from physical systems to virtual machines) can be a really tricky thing too since most virtualization technologies are still lacking this feature.
Another difficult task for the IT-department is to decide which of the current available virtualization technologies to use.
There comes the question if it is not a disadvantage to be limited to a single virtualization technology ?
To my mind it is because of two reasons :
1) Different virtualization technologies are available today.
There is "full-virtualization" (e.g. Qemu/KVM), "para-virtualization" (e.g. Xen) and "light-virtualization" which is in most cases based on a process-isolation (e.g. Linux-VServer, Solaris Zones).
Each technology has its advantages but also its "limitations".
Now, in a common data-center we normally find lots of different applications with custom needs e.g. a web hosting company may have hundreds of "idle" customer web-servers plus a couple of in-house oracle data-base servers.
For the web-servers it would make the most sense to choose one of the "light-virtualization" or "para-virtualization" technologies to limit the virtualization overhead to a minimum.
Using "light- or para-virtualization" a single, physical machine can easily host several hundreds virtual partitions.
(please see "Building a virtualized web-farm with openQRM")
On the other hand the data-base servers are CPU, IO and network intensive so choosing one of the "full-virtualization" technologies would be a benefit.
So one reason that it is a disadvantage for the IT-department to limit themselves to a single virtualization technology is that the virtualization type should be selected according to the application needs.
2) The other reason is to simply avoid vendor-locking.
So if it would be best to choose the virtualization technology according the applications and services the IT infra-structure does not only need to support several different virtualization options but also provide an option to move from one virtualization type to another and also the possibility to migrate a virtual machine back to a physical system.
Today, if you try to move a e.g. VMware-partition to Linux-VServer or a Xen-partition back to a physical machine, sure there are eventually some custom utils, scripts and howtos available which will help but at all this will be an "adventure".
Both situations, the common static data-center using physical servers and the new virtual-appliance-based infra-structure are already quite tricky to manage on their own but with the move to virtualization the system-administrator today even needs to handle "mixed environments", both physical and virtual.
To my mind we would need a tool which seamlessly integrates with the different virtualization technologies and conforms resource-planning, deployment and management of physical systems and virtual machines. This tool should also integrate with modern storage-systems to take the full advantage of fast-cloning servers for rapid and automated provisioning. It should have an open- and plugg-able architecture so that custom third-party utilities can be integrated in an easy way to combine them into a single-management console for the whole IT infra-structure.
If you are interested in such a tool you may want to take a look at the openQRM project which is exactly providing this kind of framework.
add to Del.icio.us
submit to Furl