It's a cliche but better to be safe than sorry when it comes to software license compliance.
Fortunately the company I was implementing the OSS platform for had enterpise wide licensing agreements with all major OS vendors and 3rd party software products required for the OSS platform so suffice it to say no matter how we implemented our virtual approach to OSS delivery I was confident we fell under their enterpise "install anywhere anytime for any reason" licenses without having to worry about due diligence. For those of us that aren't so fortunate to work for clients that have these types of enterprise licensing agreements, your job may be a little trickier when in comes to virutalization however what became apparent to me is that it's not that big of a concern.
Our plan was to use virtualization at some point in all phases of the OSS delivery. We actually used VMs for training and UAT in some cases so our licensing due diligence had to be done to double and triple check for compliance. What we found was that our biggest concern around compliance was with the plan to use a windows OS on our VM. The big unknown was how did windows view VM licensing? I know choosing windows would make our licensing issues a little less clear but it was done strategically because of how we were using our VMs. We planned on releasing VMs to end business users for validation testing and training and windows was really the only way to go. This whitepaper
from microsoft was critical to our due diligence efforts and should be referred to for anyone doing virtualization with Microsoft. As for the other software components of our VMs, we discovered that licensing was not really that big of an issue. For example, with developer or restricted editions of Database software and appserver software it was determined we were pretty much in the clear.
For those looking at using VMs my recommendation is to use opensource products like linux, jboss, apache, etc and you can tick off the compliance box straightaway without any due dilligence. If this is not possible, you may have to answer some questions first. Firstly, the biggest question you need to answer is how am I going to leverage virtualization in my OSS delivery? Am I going to just use it at the development or prototype phase or will VMs be distributed widely and used at all phases of the OSS implementation. If the answer is the former, you are likely not going to have to do very much due diligence as most software vendors out there now have some concept of temporary development licenses that can be used anywhere on any development pc or development environment. If the answer is the ladder you will want to be a little more careful when doing due diligence around license compliance. read up Most major software vendors are now committed to offering support for virtualization as companies like vmware
point out. I think in the very near future virtualization licensing will be come, at best, a non-issue especially with vendors like microsoft and other major players getting into the virtual software appliance space. At worst, it will become a background issue that can be solved quickly and cheaply.