Author Update 5/5/2010. Microsoft is releasing SQL Server 2008 along including a SQL Server Datacenter Edition with unlimited access and an Enterprise Edition allowing 4 instances. Licensing costs are changing as well. Please see today's post for an interim updated SQL Server calculator.
Greg Shields and I co-authored a 2006 article for Redmond Magazine titled, "Can You Cash in with Virtualization Licensing?" Today's savings are far more significant as Microsoft has added beneficial products and policies while much more robust hardware and hypervisor technologies enable higher densities of virtual machines to hosts. This article provides an updated description of the virtualization licensing parameters for both Microsoft Windows Server and SQL Server along with a calculator designed to determine virtualization licensing savings.
Windows Server 2008
Virtual instances of Windows Server Standard can be licensed as in the physical world on a per instance basis. Alternatively, each license of Windows Server Enterprise on a virtualization host allows four instances of Windows Server. But Windows Server Datacenter Edition, when licensed by the underlying physical CPUs of the virtualization host, allows unlimited instances of any type of Windows Server guests whether running VMware vSphere, Microsoft Hyper-V, Citrix XenServer or any other hypervisor. CALs (Client Access Licenses) are not required for the Windows Server Data Center Edition licenses for the host, but are required for any guest Windows O/S applications as they are in the physical realm.
Impact for Virtualized Data Center Organizations
A virtualized data center (vDC) running over 12 instances of Windows Server generally achieves the lowest costs by licensing Windows Server Data Center Edition on a CPU basis.
In the example shown in Figure 1, we conservatively use a density ratio of 20 VMs per host, although the VMware VMmark scores indicate that most 2-CPU hosts with 96GB can run around 24 VMs. Let's assume that SampleCo runs 50 physical servers with Windows Server Standard at a street price of $719 per server (without SA) and 10 physical servers with Windows Server Enterprise at a street price of $2,334 per server for a total licensing cost of $59,290. Virtualizing the 60 physical servers onto four hosts includes one host for redundancy. Multiplying the four 2-CPU vSphere hosts by the Windows Server Datacenter Edition street price of $2,300 per CPU equals $18,400. Total licensing savings are therefore $40,890.
Figure 1: Virtualization Licensing Savings Calculator Output for MS Window Server
In a physical world, many disparate servers each running either SQL Server Standard or SQL Server Enterprise leads organizations to frequently license SQL Server by the CAL model. The relatively small number of hosts of a virtualized data center generally make the CPU licensing model preferable. Unlike Windows Server, no CALs are required when licensing SQL Server by processor.
SQL Server Standard, when licensed by processor, applies to an entire physical server or to a single virtual instance.
SQL Server Enterprise, when licensed by processor, must be licensed by the underlying physical CPUs of the server. It is also licensed by the underlying physical CPUs of a virtualization host, regardless of hypervisor, and now allows unlimited instances of any type of SQL Server guests on the physical host.
Impact for Virtualized Data Center Organizations
A vDC only running a small number of SQL Server Standard instances and no SQL Server Enterprise achieves a lower cost by continuing to license them by instance. But if the vDC has many SQL Server Standard instances or at least two CPU instances of SQL Server Enterprise, it is likely to achieve significant savings by using SQL Server Enterprise for the virtualization hosts.
The example shown in Figure 2 assumes that SampleCo runs one server (2 CPUs) of SQL Server Enterprise at a street price of $23,910 per CPU (without SA), although it is clustered with a second server also with two CPUs, therefore requiring a total of four CPU licenses. SampleCo also has 20 SQL Standard servers at a street price of $5,737 per server running non-clustered for a total physical SQL Server licensing cost of $210,380.
With a virtualization density of 12 SQL Server VMs per 2-CPU host, all 22 servers are consolidated onto two 2-CPU hosts. Adding one more host for redundancy results in a licensing cost of $23,910 X 6 CPUs = $143,460. Total SQL Server licensing savings equate to $210,380 – $143,460 = $66,920.
Figure 2: Virtualization Licensing Savings Calculator Output for MS SQL Server
The virtualization license savings are just one small element in the decision of whether or not to virtualize the data center, but can further boost the ROI and possibly result in a compelling near-term cash flow reduction depending where an organization is in its Microsoft licensing refresh cycle. The calculator results emphasize the importance from a licensing perspective of choosing platform products that enable a dense VM to host CPU ratio.
Disclaimer: While I believe the licensing logic and calculator results to be accurate, they have not been reviewed or approved by Microsoft. If I have made any errors I welcome corrective feedback.