SrinivasRamanu1
ServiceNow Employee
ServiceNow Employee

ServiceNow SAM Pro provides optimization opportunities to make the best available use of your available licenses. To understand this better you can review this video here: 

Video: Cluster License Optimization on SAM Pro 

 

However, there might be cases when you would want to assign licenses based on your organization requirements. Here you can use Allocations. 

 

Allocations is a way for SAM Pro customers to prioritize license assignment for specific hosts, virtual machines, users, devices etc. as per the organization’s licensing strategy. It is a way to “override” ServiceNow SAM Pro’s own license assignment. More on the difference between License Optimization and Allocation here.  

 

There are many use cases of allocation management covered here. In this blog we touch upon one more use case as follows: How to allocate License to the Host or the Virtual machine in a Hypervisor cluster?

 

In this article, we will tell you how to “override” license assignment to either a Host or VM on a cluster, so that the entitlement licenses at the layer on your choice. 

 

Use Case: 

You currently have a SQL Server Enterprise license, and SAM Pro has optimized licensing by assigning it to the virtual layer. However, if your license strategy involves assigning licenses to the host layer, you can adjust this. Licensing at the host layer might be preferable if you anticipate adding more VMs to the cluster in the future, as managing licenses at the host level can be more straightforward. 

 

Step 1: Go to Software asset workspace and navigate to License Operation and Open up the Software entitlement for SQL Server enterprise. 

SrinivasRamanu1_0-1733719708655.jpeg

Step 2: Go to Device allocation tab on Software entitlement and click new 

SrinivasRamanu1_1-1733719733942.jpeg

Step 3: Click on New and add the fields 

SrinivasRamanu1_2-1733719760799.jpeg

Allocated to: Here you can select the Host or VM that you would like to license 

Entitlement: It’s prefilled with your entitlement 

Quantity: You can either: 

  1. Enter "1," or 
  1. Locate the record in the Allocated To field, find the number of cores for the Host or VM, and input the correct core count. 

Key Points: 

  • If you do not enter the exact number of cores, ServiceNow will automatically use the actual core count of the machine to manage licensing. 
  • If you enter: 
  • Fewer cores than the actual machine has, ServiceNow will still count the exact number of cores present on the machine for licensing purposes. 
  • More cores than the actual machine has, ServiceNow will use the number you entered. However, the surplus will be marked as "allocated not in use" for licensing. 

Save the record and recreate for all hosts or VMs in the cluster. 

In this example, we are showing the hosts allocated. This Cluster (Cluster 103) has 3 hosts each with 16 cores however you can observe that for one we just allocated 1 right. The system will still assign the correct licenses to the host (based on the actual number of cores) 

SrinivasRamanu1_3-1733719805479.jpeg

Step 4: Save the entitlement and Run reconciliation 

Step 5: You can go to the License usage->License metric result for SQL Server Enterprise and click on License required section 

 

SrinivasRamanu1_4-1733719845902.jpeg

 

Step 6: You can check the product automatically licensed at the Host layer only (way to check is to see is virtual= false) for Cluster 103 

SrinivasRamanu1_5-1733719877233.jpeg

Step 7: You can even pull in more fields like allocated in use, not allocated in use, allocation etc. to see if allocation really worked. "Allocated in use" means that whatever was allocated has been utilized from a licensing perspective. See description of more fields here 

SrinivasRamanu1_6-1733719907206.jpeg

 

Note:  

  1. You should perform allocation as per the licensing rules of the publisher. For example: performing Host layer licensing on SQL Server Standard is not allowed as per Microsoft Licensing Rules. If you allocate the product will show as “allocated not in use” 
  1. You should not allocate license to a cluster, either allocate on the host(s) or VM(s) of a cluster. However, if you add allocation to them, they too will show as “allocated not in use” 

In both these use cases you will find a remediation option- Remove allocation created by which you can remove this allocation