Microsoft alters server app licensing for virtualization
It's been a slow, painful separation that's taken decades: divorcing Microsoft from its reliance upon per-processor licensing of its software. Today, the company took another hard step toward turning its back on an obsolete practice.
Up until this week, it has actually been a violation of Microsoft's Windows licensing terms for data center admins to do one of the quintessential tasks in their environment: moving running applications on virtual systems between physical processors. For data centers that consolidate their workloads by deploying multiple virtual servers on far fewer processors, live migration is a critical load balancing operation. In fact, it's one of VMware's key administrative features for its popular VMware Fusion.
In response to over two years of pleas for leniency, Microsoft this morning made some serious adjustments to how it licenses server applications such as SQL Server, SharePoint, and BizTalk Server, effective September 1. These are not adjustments to Windows licensing (contrary to reports), but rather changes to the way the company interprets the processor/server/program relationship.
Hopefully, the end result is that businesses will only pay for the total number of physical processors that end up running a server application, regardless of how many virtual machines may be handling it.
Understanding the new licensing scheme is a tricky business, so we'll try to go slow: To fully embrace the concept, you first have to accept the new reality that programs don't run on "PCs" any more. The place where a program lives is now the operating system environment (OSE), and that can be a physical or a virtual machine. The way things used to be, an application was licensed based on how many OSEs it would run on, which removed the entire value proposition for virtualization.
A document being sent to Microsoft's Volume Licensing customers this morning (Word document available here) explains that a customer can now count the total number of physical processors in her enterprise that will be assigned to run an application at any one time, regardless of how many OSEs her data center manages. This is important because she can't (or for architectural reasons, shouldn't) designate which processors are always mandated to run what software. If the plan is for six processors maximum to handle the workload for one server application, regardless of where those six processors happen to be located (since they can be moved around), the total number of licenses the customer needs to purchase for that application is six.
As Microsoft's notice to customers reads, "Without the limitation on license reassignment, you can reassign licenses within your server farm as frequently as needed as long as each server that is running instances of the server software has at least one processor license for each supporting physical processor. You can move licenses freely from server to server as workloads fluctuate and move, and different physical processors are used. The software can run in any number of physical and virtual OSEs within a server farm as long as the number of physical processors being used by running instances of the software at any one time does not exceed the number of licenses assigned to servers in the server farm."
|In this homemade video posted to YouTube, made prior to Microsoft's policy changes, a gentleman politely takes the time to explain the company's virtualization licensing scheme -- using a clay pot, some slips of paper, and some M&M's -- to his grade-school-age child.|
Under the old scheme, Microsoft considered it a reassignment of license for a data center to move an application from one processor to another, even if that app was running in a virtual machine. In fact, one outdated clause mandated that customers wait for at least 90 days before making a decision to move installed software from one processor to another -- a clause written when moving one app's processor was synonymous with moving its home.
"...As a Microsoft volume licensing customer, you may reassign software licenses for products in the Microsoft Servers licensing models, but not on a short-term basis," reads Microsoft's October 2006 explanation of its earlier policies (a snapshot of which remains posted on VMware's Web site). "'Short-term basis' means more frequently than within 90 days of the last assignment (or reassignment). You may reassign software licenses sooner if you retire the server sooner due to permanent hardware failure."
Beginning next month, that 90-day reassignment clause will no longer exist.
The company's current volume licensing scheme for Windows Server, however, remains intact today, although some recent changes have made Microsoft's policies more flexible than before. Under its current system, the company now explains, Microsoft views Windows Server (especially with Hyper-V) as first and foremost a physically-based host for virtual machines, and thus licenses it on that basis even though a VM could itself be running Windows Server.
As Microsoft advises customers, they have a choice of purchasing WS2K8 Enterprise Edition, each copy of which allows for one physical processor and up to four VMs per processor on which it's installed; or WS2K8 Datacenter Edition, which is licensed purely per-processor but without counting how many VMs each processor may run.
"This would increase the total cost," Microsoft's page currently reads, referring to the Datacenter Edition option. "However, depending on the [customer] company's plans for adding future VMs, this may be a smart strategic investment."