Strategies for licensing SQL Server on a per-processor basis

Licensing is one of the most challenging aspects of a Windows Server administrator's job. Here are a few pointers on per-processor licensing and storage assignment.

Pre-processor licensing can get complicated when it comes to SQL Server. In a previous tip, I stated that forthcoming editions of SQL Server will introduce new considerations for licensing the product on a per-processor basis to obtain the unlimited virtualization rights for database instances.

The unlimited virtualization rights benefit is made easiest when using virtual machines. Further, the benefit is not fully realized unless the Windows Datacenter edition is licensed on the processors to allow unlimited virtualization rights for the Windows Server operating system as well. However, there is a problem that arises in most virtualization installations: If a SQL per-processor virtual machine can move freely among any host in a cluster, each processor requires a SQL per-processor license; this can exponentially increase the licensing cost for a virtualized SQL Server.

Instead of giving up on obtaining the unlimited virtualization rights benefit, companies should architect systems to fit the licensing allocation. You can take the following steps to limit the processor footprint and the licensing requirement:

  • Create a dedicated cluster. This will allow a specified number of hosts and processors to be in a logical container to house SQL Server workloads. In most situations, this will be a smaller cluster and typically use one or two socket host systems.
  • Perform Logical Unit Number (LUN) masking. By having a dedicated LUN for SQL Server virtual machines that is visible to selected host systems or servers, you can control where the virtual machines can run. In an example where a total of four SQL processor licenses are available, LUN masking two host systems with two sockets each can control the virtual machine location. Even if the cluster has other host servers, the virtual machine cannot move to those hosts freely. Virtual machine storage migration technologies can move them, but that is not free movement.
  • Use a management tool to enforce a placement policy. One tool to check out is the HyTrust Appliance, which can enforce policy at an incredibly granular level beyond that of the base security model; this can be for licensing and security configurations. A user may be an administrator in the virtual infrastructure, but may have the permissions to move a virtual machine across hosts, but not across datastores as an example with the HyTrust Appliance.
There is no one-size-fits-all solution for licensing SQL Server on a per-processor basis in a virtualized infrastructure. For your organization, the right solution may be a combination of these tips and other strategies that are appropriate for a specific situation. Note: You should always consult your Microsoft licensing professional for a confirmed configuration for your requirements, license entitlement, and customer program level.

How does organization go about licensing SQL in a virtualized infrastructure? Share your comments in the discussion.

TechRepublic's Servers and Storage newsletter, delivered on Monday and Wednesday, offers tips that will help you manage and optimize your data center. Automatically sign up today!