Microsoft Licensing and Server Virtualization

Are you planning to deploy VMWare Server, VMWare ESX, Mictosoft Virtual Server, HyperV or some other virtualization technology and have no idea where to start trying to figure out what licenses you need? Let me see if I can clear this up for you a little…

The topic of Microsoft licensing in a virtual server/machine environment is a topic of frequent discussion in the CITRT IRC channel, so I feel like I’ve become a bit of an expert by observance. The question came up again today on itDiscuss, so I decided to write it all down in one place and then chase down some links so we could have this documented once and for all.

Here are the basics:

  1. Windows Server Standard – One instance. Period. Do not pass Go. Do not collect $200.
  2. Windows Server Enterprise – One physical install + four additional virtuals
  3. Windows Server Datacenter – One physical install + unlimited virtuals**

To back up number two above, here’s a quote from an FAQ found on Microsoft.com:

Licensing does not depend on which virtualization technology is used. With a license for Windows Server 2003 R2, Enterprise Edition, you can run one instance of the software in a physical operating system environment and up to four instances in virtual operating system environments. With VMWare GSX Server, this means you can run one physical instance plus four virtual instances. With VMWare ESX Server, it means you can run four virtual instances because there is no need for a physical instance.

As you may have noticed from that quote, Microsoft is surprisingly platform agnostic in regards to which virtualization technology you choose (MS Virtual Server, VMWare, Xen, etc). For more information, checkout the whitepaper pubished last year titled Licensing Microsoft Server Products with Virtual Machine Technologies. Their indifference may have something to do with the many accusations and lawsuits they continue to face in regards to their monopolistic power. Regardless of the reasoning, it’s good news for everyone.

One rather important thing to keep in mind when thinking about licensing Microsoft Server products is that they are licensed per CPU socket, not CPU core. Can you say “THANK GOODNESS!”? This applies equally to VMWare ESX – you need enough HOST licenses of Windows Server to cover each physical processor socket in your ESX cluster.

It’s also important to keep in mind the fundamental differences in the various versions of Windows Server. For example, Server Standard (32-bit) is limited to accessing 4GB of RAM. This would likely be a non-issue for a guest install, but you certainly wouldn’t want to limit your Host box to that little memory. It’s not totally scary, just do your homework and you’ll be fine.

Microsoft has provided us with this handy little Licensing Calculator which should help you make sense of which version will be right for you and your implementation.

One final note (as denoted with ** above): Make sure you’re aware that with Datacenter Edition, you also need per-user or per-device CALs.

If anyone sees an inaccuracy in the information I’ve provided, please do leave a comment and I’ll update this post accordingly. Thanks to all the guys in IRC for helping compile and track down info, specifically, Tony Dye, Chris Green, and David Szpunar.