Software management in dynamically scalable cloud environment
AssigneeCenturyLink Intellectual Property LLC
InventorsSteven M. Casey, Thomas Schwengler, Kevin M. McBride, Felipe Castro
Life of this patent
Estimating the term…
Abstract
A license manager includes a processor and non-transitory computer readable media having encoded thereon a set of instructions executable by the at least one processor to receive a request, from a virtual machine, to reserve an individual license of the set of authorized licenses for a vendor software instance, determine the availability licenses for the requested vendor software, register a unique identifier of the virtual machine in association with an available individual license, grant the individual license to the virtual machine, and prevent the granted individual license from concurrent use by other virtual machines or devices.
Claims15
A system for managing software in dynamically scalable network environments, the system comprising:
- a plurality of servers hosting one or more virtual machine instances, each of the plurality of servers in communication with a service network and accessible to at least one client, at least one virtual machine instance of the one or more virtual machine instances associated with the at least one client, each of the one or more virtual machine instances having a unique identifier;
- a network orchestrator in communication with the plurality of servers, wherein the network orchestrator handles requests from the at least one client to provision the at least one virtual machine instance associated with the at least one client in one or more of the plurality of servers;
- a license manager in communication with each of the one or more virtual machine instances, the license manager comprising:
- at least one processor;
- a network communications interface in communication with the plurality of servers and the network orchestrator;
- a license database having one or more sets of authorized licenses, each of the sets of authorized licenses respectively associated with a respective vendor software;
- non-transitory computer readable media having encoded thereon a set of instructions executable by the at least one processor to:
- receive, via the network communications interface, from one of the at least one virtual machine instance, a request to reserve an individual license of the set of authorized licenses for a vendor software instance on one of the at least one virtual machine instance, the vendor software instance requiring the individual license to run on the one of the at least one virtual machine instance;
- determine, via the license database, an availability of the individual license associated with the vendor software instance in the request;
- register, in the license database and in response to determining that the individual license is available, the unique identifier of the one of the at least one virtual machine in association with the individual license;
- grant the individual license to the one of the at least one virtual machine;
- prevent, via the license database, the individual license from concurrent use by other virtual machine instances;
- create at least one restriction condition on the use of the individual license determining the availability of the individual license, wherein the plurality of servers includes a software defined radio in communication with the license manager, the software defined radio identifying a physical location of a server of the plurality of servers hosting the at least one virtual machine instance, and wherein the at least one restriction condition restricts the availability of the individual license based on the physical location of the server of the plurality of servers;
- and
- revoke the individual license upon an occurrence of the at least one restriction condition.
A license manager comprising:
- at least one processor;
- a network communications interface in communication with a plurality of servers hosting one or more virtual machine instances and a network orchestrator in communication with the plurality of servers, wherein the network orchestrator handles requests from the at least one client to provision the at least one virtual machine instance associated with the at least one client in one or more of the plurality of servers;
- a license database having one or more sets of authorized licenses, each of the sets of authorized licenses corresponding to a respective vendor software;
- non-transitory computer readable media having encoded thereon a set of instructions executable by the at least one processor to:
- receive, via the network communications interface, from one of the at least one virtual machine instance, a request to reserve an individual license of the set of authorized licenses for a vendor software instance on the one of the at least one virtual machine instance, the vendor software instance requiring the individual license to run on the one of the at least one virtual machine instance;
- determine, via the license database, an availability of the individual license associated with the vendor software instance in the request;
- register, in the license database and in response to determining that the individual license is available, a unique identifier of the one of the at least one virtual machine in association with the individual license;
- grant the individual license to the one of the at least one virtual machine;
- prevent, via the license database, the individual license from concurrent use by other virtual machine instances;
- create at least one restriction condition on the use of the individual license determining the availability of the individual license, wherein the plurality of servers includes a software defined radio in communication with the license manager, the software defined radio identifying a physical location of a server of the plurality of servers hosting the at least one virtual machine instance, and wherein the at least one restriction condition restricts the availability of the individual license based on the physical location of the server of the plurality of servers;
- and
- revoke the individual license upon an occurrence of the at least one restriction condition.
A method for managing licenses comprising:
- provisioning, via a network orchestrator, at least one virtual machine instance on a plurality of servers, each of the at least one virtual machine instance associated with an at least one client;
- providing, via the plurality of servers, access to at least one vendor software to each of the at least one virtual machine instances;
- generating, at one or more of the plurality of servers, a request to reserve an individual license in a set of authorized licenses for a particular vendor software, the individual license reserved in association with a virtual machine instance of the at least one virtual machine instance, the virtual machine instance associated respectively with a client of the at least one client;
- receiving, via a license manager, the request to reserve the individual license in the set of authorized licenses for the particular vendor software, the particular vendor software requiring the individual license to run on the virtual machine instance;
- determining, via the license manager, an availability of the individual license from the set of authorized licenses;
- registering, via the license manager, a unique identifier of the virtual machine instance in association with the individual license;
- granting, via the license manager, the individual license to the virtual machine instance;
- preventing, via the license manager, the individual license from concurrent use by other virtual machine instances;
- creating, at the license manager, at least one restriction condition on the use of the individual license determining the availability of the individual license, wherein the plurality of servers includes a software defined radio in communication with the license manager, the software defined radio identifying a physical location of a server of the plurality of servers hosting the at least one virtual machine instance, and wherein the at least one restriction condition restricts the availability of the individual license based on the physical location of the server of the plurality of servers;
- and
- revoking, via the license manager, the individual license upon an occurrence of the at least one restriction condition.
Dependencies are inferred from the claim text.