IP Library Granted Patent US 9,245,095
Granted Patent B2
US 9,245,095 · App. 13/280,815 · Granted Jan 26, 2016

System and method for license management of virtual machines at a virtual machine manager

Inventors: Yellapragada Venkata Subrahmanya Sarma (Hyderabad, IN); Gautham Muthyala (Hyderabad, IN); Muthu Krishnan Sattanathan (Madurai, IN); Manigandan Bakthavatchalam (Tamil Nadu, IN)
Assignee: CA, Inc.
G06F21/10G06F9/45558
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,245,095
App. No.
13/280,815
Granted
Jan 26, 2016
Kind
B2
Abstract

According to one embodiment of the present disclosure, a method includes receiving an event notification from a virtual machine manager operable to control the execution of one or more virtual machines, the event notification corresponding to a first virtual machine and indicating an event type associated with the first virtual machine. The method also includes updating an inventory indicating a number of active instances of one or more applications based on the event notification. The method further includes determining compliance or non-compliance with one or more license policies based on the inventory, each license policy corresponding to at least one of the one or more applications.

Claims (50)

1. A method for license management of virtual machines, comprising:

receiving an event notification from a virtual machine manager configured to control the execution of a plurality of virtual machines, the event notification corresponding to a first virtual machine and indicating an event type associated with the first virtual machine;

receiving a file from the virtual machine manager, the file being a snapshot of the first virtual machine;

parsing a configuration file of the first virtual machine to determine a number of: a first plurality of applications installed on the first virtual machine and a second plurality of applications running on the first virtual machine;

updating, with the determined number, an inventory indicating how many active instances of the first plurality of applications and the second plurality of applications are in the plurality of virtual machines based on the event notification; and

determining compliance or non-compliance with a plurality of license policies based on the inventory, each license policy of the plurality of license policies corresponding to at least one application of: the first plurality of application and the second plurality of applications in the first virtual machine.

2. The method of claim 1 , wherein determining compliance with the plurality of license policies comprises determining, for each application, whether the number of active instances of the application is less than or equal to a licensed number of instances of the application.

3. The method of claim 1 , wherein the event type is a power-on event, the method further comprising:

wherein an active instance of an application comprises at least one of an instance of an application that is installed on a virtual machine and an instance of an application that is running on a virtual machine.

4. The method of claim 3 , wherein determining the second plurality of applications running on the first virtual machine comprises:

detecting a primary disk of the first virtual machine; and

mounting the primary disk of the first virtual machine.

5. The method of claim 3 , wherein updating an inventory indicating a number of active instances of the first plurality of applications is further based on the file received from the virtual machine manager.

6. The method of claim 1 , further comprising generating an alert in response to determining non-compliance with a license policy.

7. The method of claim 1 , further comprising terminating a first application associated with the first license policy in response to determining non-compliance with the first license policy.

8. The method of claim 1 , further comprising deleting a file associated with a first application in response to determining non-compliance with a first license policy and determining that the non-compliance is caused at least in part by the first application.

9. The method of claim 1 , further comprising shutting down the first virtual machine running a first application in response to determining non-compliance with a first license policy and determining that the non-compliance is caused at least in part by the first application.

10. The method of claim 1 , further comprising:

receiving an additional event notification from the virtual machine manager, the additional event notification comprising a clone event, the clone event corresponding to a second virtual machine being cloned;

determining whether an active instance of a second application on the second virtual machine would be non-compliant with a second license policy; and

in response to determining that the active instance of the second application on the second virtual machine would be non-compliant, preventing the second virtual machine from being cloned.

11. A system for license management of virtual machines, comprising at least one processor configured to:

receive an event notification from a virtual machine manager configured to control the execution of a plurality of virtual machines, the event notification corresponding to a first virtual machine and indicating an event type associated with the first virtual machine;

receive a file from the virtual machine manager, the file being a snapshot of the first virtual machine;

parse a configuration file of the first virtual machine to determine a number of: a first plurality of applications installed on the first virtual machine and a second plurality of applications running on the first virtual machine;

update, with the determined number, an inventory indicating how many active instances of the first plurality of applications and the second plurality of applications are in the plurality of virtual machines, based on the event notification; and

determine compliance or non-compliance with a plurality of license policies based on the inventory, each license policy of the plurality of license policies corresponding to at least one application of: the first plurality of applications and the second plurality of applications in the first virtual machine.

12. The system of claim 11 , wherein the at least one processors configured to determine compliance or non-compliance with the plurality of license policies are further configured to determine, for each application, whether the number of active instances of the application is less than or equal to a licensed number of instances of the application.

13. The system of claim 11 , wherein an active instance of an application comprises at least one of an instance of an application that is installed on a virtual machine and an instance of an application that is running on a virtual machine.

14. The system of claim 13 , wherein the at least one processors configured to determine the one or more applications running on the first virtual machine are further configured to:

detect a primary disk of the first virtual machine; and

mount the primary disk of the first virtual machine.

15. The system of claim 11 , wherein the at least one processors are further configured to generate an alert in response to determining non-compliance with a license policy.

16. The system of claim 11 , wherein the at least one processors are further configured to terminate a first application associated with the first license policy in response to determining non-compliance with the first license policy.

17. The system of claim 11 , wherein the at least one processors are further configured to delete a file associated with a first application in response to determining non-compliance with a first license policy and determining that the non-compliance is caused at least in part by the first application.

18. The system of claim 11 , wherein the at least one processors are further configured to shut down the first virtual machine running a first application in response to determining non-compliance with a first license policy and determining that the non-compliance is caused at least in part by the first application.

19. Logic encoded in non-transitory computer readable medium, the logic comprising instructions that, when executed by a processor, cause the processor to:

receive an event notification from a virtual machine manager configured to control the execution of a plurality of virtual machines, the event notification corresponding to a first virtual machine and indicating an event type associated with the first virtual machine;

receive a file from the virtual machine manager, the file being a snapshot of the first virtual machine;

parse a configuration file of the first virtual machine to determine a number of: a first plurality of applications installed on the first virtual machine and a second plurality of applications running on the first virtual machine;

update, with the determined number, an inventory indicating how many active instances of the first plurality of applications and the second plurality of applications are in the plurality of virtual machines, based on the event notification; and

determine compliance or non-compliance with a plurality of license policies based on the inventory, each license policy of the plurality of license policies corresponding to at least one application of: the first plurality of applications and the second plurality of applications in the first virtual machine.

20. The logic of claim 19 , wherein the instructions that cause the processor to determine compliance or non-compliance with the plurality of license policies further cause the processor to determine, for each application, whether the number of active instances of the application is less than or equal to a licensed number of instances of the application.

21. The logic of claim 19 , wherein an active instance of an application comprises at least one of an instance of an application that is installed on a virtual machine and an instance of an application that is running on a virtual machine.

22. The logic of claim 21 , wherein the instructions that cause the processor to determine the one or more applications running on the first virtual machine further cause the processor to:

detect a primary disk of the first virtual machine; and

mount the primary disk of the first virtual machine.

23. The logic of claim 19 , wherein the one or more processors further cause the processor to generate an alert in response to determining non-compliance with a license policy.

24. The logic of claim 19 , wherein the instructions further cause the processor to terminate a first application associated with the first license policy in response to determining non-compliance with the first license policy.

25. The logic of claim 19 , wherein the instructions further cause the processor to delete one or more files associated with a first application in response to determining non-compliance with a first license policy and determining that the non-compliance is caused at least in part by the first application.

Assignments (2)
MERGER Recorded Sep 28, 2015
From: COMPUTER ASSOCIATES THINK, INC.
To: CA, INC.
Reel/Frame 036672/0059 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 25, 2011
From: SARMA, YELLAPRAGADA V.S.; MUTHYALA, GAUTHAM; SATTANATHAN, MUTHU K.; BAKTHAVATCHALAM, MANIGANDAN
To: COMPUTER ASSOCIATES THINK, INC.
Reel/Frame 027116/0525 →
Continuity (1)
Related Publication 20130104125A1 · Apr 25, 2013