Monday, September 10, 2012

SQL 2012 Licensing in VMware vSphere

I was working with a customer on virtualizing SQL, and they expressed concerns about licensing SQL 2012 in a virtual environment.  This is a common concern I'm hearing, so I thought I would clarify as best I could.  I dug into the SQL Server 2012 Licensing Reference Guide ( http://go.microsoft.com/fwlink/?LinkId=230678 ) and found the following:

 
SQL Server 2012 offers expanded virtualization rights, options and benefits to provide greater flexibility for customers deploying in virtual environments. When deploying SQL Server 2012 software in virtualized environments, customers have the choice to license either individual virtual machines as needed, or to license for maximum virtualization in highly virtualized, private cloud, or dynamic environments. Maximum virtualization can be achieved by licensing the entire physical server with Enterprise Edition core licenses and covering those licenses with Software Assurance (SA). (Pg. 10)

 
Now, the key take away is “…either individual virtual machine [or] by licensing the entire physical server with Enterprise Edition core licenses” (Pg. 10).  Looking further into it, page 11 details individual VM licensing.  It points out that a minimum of 4 core licenses are required to be purchased for a VM regardless of edition or the number of cores presented (which is different from 2008 R2).  But, other than that, the number of cores presented is the number you need to license.

The last thing in terms of individual VM licensing is that Software Assurance is REQUIRED if you would like to vMotion the SQL server.  “For customers … who want to move VMs dynamically across servers … Microsoft permits License Mobility as an exclusive SA benefit for all SQL Server editions” (Pg. 11).

Now, if you plan on creating multiple SQL servers in the environment, you may want to consider the other route; “Licensing for Maximum Virtualization”.  This is where things get a little confusing.  In this scenario, you would license ALL cores on a physical host with SQL 2012 Enterprise Edition.  This would allow you to create as many VMs with SQL as the number of physical cores you’ve licensed, REGARDLESS OF THE NUMBER OF ASSIGNED VIRTUAL CORES. So, here’s their example from page 12:
 

For example, a four processor server with four cores per processor—fully licensed with sixteen core licenses—can run SQL Server software in up to sixteen VMs, regardless of the number of virtual cores allocated to each VM.

 
Now, you will need Software Assurance to take advantage of this feature.  And in addition, you’d need SA if you wanted to vMotion anyway.

That’s it in a nutshell (all-be-it a coconut shell).  There are other options, namely Server+CAL licensing options.  You can look at the document, and it details that scenario as well.  Might be worth looking at for you.  Also, I would be remiss if I didn’t say, this is a best effort interpretation of the Microsoft SQL 2012 Licensing model.  Your mileage may vary…  But, I’ve included the link to the document at the top.  You can double-check my work. 

If you have any questions, don’t hesitate to ask.  Thanks!

No comments:

Post a Comment