In case you haven't heard, virtualization is taking the IT world by storm. Promises of reduced downtime, lower power and cooling costs, better use of hardware, and ease of administration have IT shops moving to virtualization like they're in a race. For the most part, those promises are true, but there are certainly some pitfalls associated with virtualization, and those don't get nearly as much attention as the benefits.
One major downside to enterprise virtualization is the CPUs in the host servers. A common scenario is that a push for virtualization will start with a small test VMware, Xen, or VirtualIron farm. A few servers running a dozen VMs, perhaps. Once that farm has proven to be stable and functional, it will necessarily expand, and more production servers will be brought into the virtual infrastructure, requiring more physical host servers. Calls are made and orders are placed, only to discover that the CPUs used in the original farm are no longer offered by the server vendor or the CPU vendor, or both. This becomes a major issue, since a farm must be built on identical CPU structures to realize the full benefits of virtualization, including VM migrations and high availability.
The problem is that transitioning running VMs from one host to another can only realistically occur if both host servers have the same CPU stepping and options. Otherwise, VMs can become unstable or crash altogether. For instance, if you have a VM running on a host that has SSE3-equipped CPUs, moving that VM to a host that only has SSE2 will produce myriad problems -- if the VM moves at all. The really frustrating part is that the host hardware might only be six months old, yet the CPUs are no longer available.
This situation produces some interesting thinking. In some cases, you may be able to push the vendor to look in the back of their closet for a few CPU kits, but that's a stop-gap measure and cannot be relied upon. Another oddly popular option is to hit eBay for new old-stock CPU kits that match the current hardware. The only other option is to buy a whole new set of servers with new CPUs or new CPU kits for the old servers, migrate the whole farm, and hope that when you need to add capacity, the CPUs for the new boxes are still around. Of course, you then put the nearly-new-but-now-useless original CPU kits on eBay and sell them to someone else who's in the same boat you were.