Optimization of virtual appliance deployment
First Claim
1. A deployment method for deploying a new virtual appliance on a data processing center including one or more computers configured to each host one or more virtual machines, the new virtual appliance including one or more new virtual machines which each include one or more new software programs, wherein the deployment method includes steps comprising:
- determining structure information of the new virtual appliance, the structure information of the new virtual appliance including an indication of the one or more new virtual machines and an indication of the one or more new software programs, wherein the determining of the structure information comprises verifying an inclusion of the structure information of the new virtual appliance in an appliance repository that includes structure information of each one of a plurality of known virtual appliances previously deployed on the data processing center, the determining of the structure information further comprising retrieving the structure information of the new virtual appliance from the appliance repository in response to the inclusion, or discovering the structure information from an image of the new virtual appliance and saving the structure information of the new virtual appliance into the appliance repository otherwise;
retrieving configuration information indicative of a current configuration of the data processing center;
retrieving license condition information indicative of license conditions applicable to the data processing center, wherein the retrieving of the license condition information comprises creating a first hash table including the license conditions for the virtual appliances each one being directly accessible through an identifier of the corresponding virtual appliance, and a second hash table including the license conditions for the software programs each one being directly accessible through an identifier of the corresponding software program;
determining a deployment scheme of the virtual appliance on the data processing center, the determination of the deployment scheme being performed by optimizing a cost function based on the license condition information, the configuration information and the structure information; and
deploying the new virtual appliance according to the deployment scheme;
wherein the license condition information includes an indication of a first set of license conditions each one for a corresponding virtual appliance, and an indication of a second set of license conditions each one for a corresponding software program.
0 Assignments
0 Petitions
Accused Products
Abstract
In an embodiment for deploying a new virtual appliance (225) on a data processing center (100) structure information of the new virtual appliance is determined (509-521). The structure information of the new virtual appliance includes an indication of the new virtual machines and an indication of the new software programs of each new virtual machine. Configuration information indicative of a current configuration of the data processing center is retrieved (527). License condition information indicative of license conditions applicable to the data processing center is also retrieved (530-533). A deployment scheme of the virtual appliance on the data processing center is then determined (539,548). The determination of the deployment scheme is performed by optimizing a cost function based on the license condition information, the configuration information and the structure information, and the new virtual appliance may be deployed (551) according to the deployment scheme.
23 Citations
13 Claims
-
1. A deployment method for deploying a new virtual appliance on a data processing center including one or more computers configured to each host one or more virtual machines, the new virtual appliance including one or more new virtual machines which each include one or more new software programs, wherein the deployment method includes steps comprising:
-
determining structure information of the new virtual appliance, the structure information of the new virtual appliance including an indication of the one or more new virtual machines and an indication of the one or more new software programs, wherein the determining of the structure information comprises verifying an inclusion of the structure information of the new virtual appliance in an appliance repository that includes structure information of each one of a plurality of known virtual appliances previously deployed on the data processing center, the determining of the structure information further comprising retrieving the structure information of the new virtual appliance from the appliance repository in response to the inclusion, or discovering the structure information from an image of the new virtual appliance and saving the structure information of the new virtual appliance into the appliance repository otherwise; retrieving configuration information indicative of a current configuration of the data processing center; retrieving license condition information indicative of license conditions applicable to the data processing center, wherein the retrieving of the license condition information comprises creating a first hash table including the license conditions for the virtual appliances each one being directly accessible through an identifier of the corresponding virtual appliance, and a second hash table including the license conditions for the software programs each one being directly accessible through an identifier of the corresponding software program; determining a deployment scheme of the virtual appliance on the data processing center, the determination of the deployment scheme being performed by optimizing a cost function based on the license condition information, the configuration information and the structure information; and deploying the new virtual appliance according to the deployment scheme; wherein the license condition information includes an indication of a first set of license conditions each one for a corresponding virtual appliance, and an indication of a second set of license conditions each one for a corresponding software program. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A deployment method for deploying a new virtual appliance on a data processing center including one or more computers configured to each host one or more virtual machines, the new virtual appliance including one or more new virtual machines which each include one or more new software programs, wherein the deployment method includes steps comprising:
-
determining structure information of the new virtual appliance, the structure information of the new virtual appliance including an indication of the one or more new virtual machines and an indication of the one or more new software programs; retrieving configuration information indicative of a current configuration of the data processing center; retrieving license condition information indicative of license conditions applicable to the data processing center; retrieving license entitlement information indicative of license entitlements available in the data processing center, the determination of the deployment scheme being further performed by constraining the cost function to fulfill a set of constraints defined according to the license entitlement information, wherein fulfilling the set of constraints ensures compliance with the license entitlements; determining a deployment scheme of the virtual appliance on the data processing center, the determination of the deployment scheme being performed by optimizing a cost function based on the license condition information, the configuration information and the structure information; providing information about how to reconfigure the one or more computers to achieve fulfillment of the constraints by adding Capacity on Demand (CoD) hardware resources or providing information about how to reconfigure the one or more virtual machines to achieve fulfillment of the constraints by indicating a number of virtual machines to stop or remove; determining how to reconfigure the one or more computers or the one or more virtual machines to achieve fulfillment of the constraints, and deploying the new virtual appliance according to the deployment scheme, the deploying of the new virtual appliance being conditioned to the fulfillment of the constraints by the cost function, wherein the deploying of the new virtual appliance further comprises providing a warning message in response to the missing fulfillment of the constraints by the cost function, the warning message including an indication of each license entitlement corresponding to a constraint that cannot be fulfilled and an indication of a reason of the non-fulfillment of each constraint, the warning message being provided prior to deploying the new virtual appliance, wherein the warning message further includes an indication of a reason of the non-fulfillment of each constraint.
-
Specification