Today most application producers place many software licensing restrictions on applications running in virtual environments to ensure the software is properly licensed and not out of compliance. Unfortunately many enterprises would argue that this diminishes the advantages of virtualization. Some of the licensing restrictions often used include the use of an external hardware token or a dedicated physical machine limiting the ability for enterprises to move workloads across different virtual data centers.
Traditionally, producers did not have many options to detect and prevent an enterprise from cloning the virtual machine. As a result, this cloning often resulted in the enterprise being accidentally out of compliance.
Understanding VM-Generation ID and Its Role in Compliance
With the most recent release of Windows, Microsoft has added functionality that will effectively provide a means for the producer to detect (and possibly prevent) if an application is running in a cloned virtual environment.
The feature known as VM-Generation ID allows hypervisor vendors (VMware, Citrix, and Microsoft) to expose a virtual machine identifier that can be used to detect the state of a virtual machine. This VM-Generation ID capability would allow an application running in a virtual machine to react and take proper actions whenever the VM-GenerationID has changed. The following scenarios would cause a change in the VM-GenerationID:
| Scenario | Generation ID changed |
|---|---|
| Virtual machine is paused or resumed | No |
| Virtual machine reboots | No |
| Virtual machine host reboots | No |
| Virtual machine starts executing a snapshot (every time) | Yes |
| Virtual machine is recovered from backup | Yes |
| Virtual machine is failed over in a disaster recovery environment | Yes |
| Virtual machine is live migrated | No |
| Virtual machine is imported, copied, or cloned | Yes |
| Virtual machine is failed over in a clustered environment | No |
Source: Microsoft – Virtual Machine Generation ID – http://www.microsoft.com/en-us/download/details.aspx?id=30707
Taking advantage of VM-GenerationID would provide the application producer the ability to inform enterprise users that they may be out of compliance.
How FlexNet Licensing Supports Virtual Environments
The upcoming release of Revenera’s Software Licensing Solutions, otherwise regarded as FlexNet Licensing technologies (specifically FlexNet Publisher) will support this safeguard and will allow the producer to detect and possibly prevent the application from running in a cloned virtual environment, while at the same time allowing the enterprise the ability to safely clone and/or properly move workloads across virtual data centers without being out of compliance.
What steps have you taken to tackle licensing in virtual environments?
Common Questions
What is VM-Generation ID and why is it important?
VM-Generation ID is a feature in Windows that helps detect changes in virtual machine states, such as cloning or restoring from backup. It allows software producers to ensure compliance and prevent unauthorized use in virtual environments.
How does cloning a virtual machine affect software licensing compliance?
Cloning can unintentionally put enterprises out of compliance because traditional licensing models often restrict such actions. VM-Generation ID helps detect these changes so producers can alert users and maintain compliance.
How will Revenera’s FlexNet Licensing technology address these challenges?
FlexNet Licensing will leverage VM-Generation ID to detect cloned environments and prevent unauthorized use while still allowing enterprises to safely move workloads across virtual data centers.