I’ve had a really interesting interesting (maybe even philosophical) conversation yesterday about that wonderful clause “[your favourite] software running in a Virtual Machine is not supported in production“. It was a long conversion, and I’ll get to the juicy bits in a second, but here are some of my personal views to get things started:
- Unsupported does not mean ‘it does not work within a Virtual Machine’
- In fact your software will probably run better because it won’t be installed on recycled hardware or forced to coexist with some other role (SQL/DC/IIS) on that box
- In my world, un-supported usually means KB 897615 - your mileage may vary
- It annoys me that some software vendors use this blanket statement! - I would prefer realistic statements such as “Production environments of ~ 200 consecutive users will have limited support under Virtual Machines“. But this is the world we live in, and I have to accept these are the rules I play by for today.
So with this in mind, lets entertain the following scenario with me. Pick your server role and ask yourself :
- Have you done any forward planning or architecting of virtualization within your infrastructure?
- When is the last time you called PSS/Vendor and lodged a support call for this role you want to virtualize?
- Does virtualization add enough perceived value [roi / tco / peace of mind / whatever] for day-to-day management of this role?
- Is your primary method of support for this role self help newsgroups, web, forums, or good old fashioned in-house problem solving?
If you can’t remember the last time anyone called PSS/Vendor, and your primary support method is self help — I’m probably going to guess the ‘ball is in your court’. Whether you virtualize this role is up to you. If there is no immediate value, then don’t virtualize the role. If you haven’t done any forward virtualization planning, the same applies, don’t virtualize the role.
The reason this conversation started, a friend-of-friend (lets call him Doris to protect the names of the innocent) and I got chatting. Doris was after guidance whether he should P2V his mid-tier time sheeting software. Here is the juicy parts of the story: Doris had been paying maintenance for the past few years on the software; new updates arrived every fortnight which he applied mostly no worries; the vendor didn’t support virtual machines; and the maintenance was up for renewal in a few weeks. His support team hated working with the server (he wouldn’t elaborate why) and wanted to P2V it. What would you do?
However, to wrap up the post (cause it’s getting too long), Doris is going to P2V the time app, and renew the maintenance . His team has never called the vendor for product support, and aren’t likely to in the foreseeable future. Virtual Machines keep his team happy, so he’s happy when they’re happy. …But Doris is going back to write a few guideline policy documents on P2V for their infrastructure.
So in summary: Unsupported does not mean ‘it does not work’ it just means there is a certain amount of risk there for you to mitigate if you want formal support. If you don’t like the risk, don’t virtualize it. Sounds trivial I guess, but it does present another way to look at the same problem.
These are just my thoughts, and a quick summary of a very long chat. If you’ve got similar experiences, please leave comments. I’d like to what what others have found?

Recent Comments