Part 2 of a 5-part series based on my more than a decade of virtualization experience with large enterprises and service providers, and my time running strategic planning for one of the largest 2 virtualization vendors, this blog series covers 10 types of situations when you should consider not virtualizing some of your applications.
I. When it just won’t work very well
There are some apps that just don’t work well on virtualization for a variety of reasons. VM vendors are getting better are supporting these special cases, and some new technologies like I/O virtualization are coming along to make it easier. But in the meantime, watch out for apps with these characteristics:
- High I/O apps like databases or other things that require tuning to work with underlying hardware
- Disk intensive workloads. (Or if you do virtualize one of these, use a pass-through disk instead of a virtual hard disk)
- Grid or distributed SMP “number crunching” apps that need high speed interconnectivity
- Apps that require hardware cards for which there is no virtualization driver, or apps that need a dongle
- Graphics-intensive apps (especially ones that need high end video cards)
II. When time drift will hurt your apps
VMs don’t store time identical to the physical host, which means that time drift (the VM clock diverging from the physical clock over time) will happen. If even very small amounts of this are going to hurt your apps, they’re not candidates for virtualization. Financial real-time trading apps and some industrial control systems are areas to be concerned about.