Deploying and instantiating multiple instances of applications in automated data centers using application deployment template
First Claim
1. A computer implemented method for deploying and instantiating multiple instances of an application in a data center, the computer implemented method comprising:
- a computer creating a deployment plan template for the application, wherein the deployment plan template includes configuration settings of the application comprising at least one of;
network configurations, operating systems which the application runs on, and combinations of software stack supporting the application, and wherein the deployment plan template includes a set of variables with unknown values for configurations or resource selections that have to be resolved at runtime;
the computer defining a set of deployment parameters for each instance of the application to be deployed, wherein each of the set of deployment parameters includes Internet Protocol (IP) address information, router information, and cluster information for an associated one of the each instance of the application to be deployed;
the computer associating the deployment plan template with the set of deployment parameters for each instance of the application to be deployed;
the computer generating a set of deployment plans, wherein each deployment plan in the set of deployment plans corresponds to the set of deployment parameters for each instance of the application to be deployed; and
the computer deploying multiple instances of the application into the data center using the set of deployment plans, wherein each instance of the application is unique.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, apparatus, and computer instructions are provided for deploying and instantiating multiple instances of applications in automated data centers using an application deployment template. A first mechanism is provided to deploy multiple instances of applications using an application deployment plan template. The first mechanism uses deployment parameter sets to generate corresponding deployment plans based on the deployment template. A second mechanism is provided to instantiate multiple instances of applications using deployment plan templates. A service catalog that is exposed to consumers for selection of catalog items is built on top of the second mechanism. During the cataloging and order fulfillment process, the second mechanism instantiates multiple instances of applications using the generated deployment plans and an application model to deploy multiple application instances. An existing order may also be modified or terminated responsive to a user request or service term expiration.
-
Citations
18 Claims
-
1. A computer implemented method for deploying and instantiating multiple instances of an application in a data center, the computer implemented method comprising:
-
a computer creating a deployment plan template for the application, wherein the deployment plan template includes configuration settings of the application comprising at least one of;
network configurations, operating systems which the application runs on, and combinations of software stack supporting the application, and wherein the deployment plan template includes a set of variables with unknown values for configurations or resource selections that have to be resolved at runtime;the computer defining a set of deployment parameters for each instance of the application to be deployed, wherein each of the set of deployment parameters includes Internet Protocol (IP) address information, router information, and cluster information for an associated one of the each instance of the application to be deployed; the computer associating the deployment plan template with the set of deployment parameters for each instance of the application to be deployed; the computer generating a set of deployment plans, wherein each deployment plan in the set of deployment plans corresponds to the set of deployment parameters for each instance of the application to be deployed; and the computer deploying multiple instances of the application into the data center using the set of deployment plans, wherein each instance of the application is unique. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A data processing system comprising:
-
a bus; a memory connected to the bus, wherein a set of instructions are located in the memory; and a processing unit connected to the bus, wherein the processing unit executes the set of instructions to create a deployment plan template for an application, wherein the deployment plan template includes configuration settings of the application comprising at least one of;
network configurations, operating systems which the application runs on, and combinations of software stack supporting the application, and wherein the deployment plan template includes a set of variables with unknown values for configurations or resource selections that have to be resolved at runtime;
define a set of deployment parameters for each instance of the application to be deployed, wherein each of the set of deployment parameters includes Internet Protocol (IP) address information, router information, and cluster information for an associated one of the each instance of the application to be deployed;
associate the deployment plan template with the set of deployment parameters for each instance of the application to be deployed;
generate a set of deployment plans, wherein each deployment plan in the set of deployment plans corresponds to the set of deployment parameters for each instance of the application to be deployed; and
deploy multiple instances of the application into a data center using the set of deployment plans, wherein each instance of the application is unique. - View Dependent Claims (9, 10, 11, 12)
-
-
13. A computer program product embodied in a computer readable recording medium for deploying and instantiating multiple instances of an application in a data center, the computer program product comprising:
-
first instructions configured to create a deployment plan template for the application, wherein the deployment plan template includes configuration settings of the application comprising at least one of;
network configurations, operating systems which the application runs on, and combinations of software stack supporting the application, and wherein the deployment plan template includes a set of variables with unknown values for configurations or resource selections that have to be resolved at runtime;second instructions configured to define a set of deployment parameters for each instance of the application to be deployed, wherein each of the set of deployment parameters includes Internet Protocol (IP) address information, router information, and cluster information for an associated one of the each instance of the application to be deployed; third instructions configured to associate the deployment plan template with the set of deployment parameters for each instance of the application to be deployed; fourth instructions configured to generate a set of deployment plans, wherein each deployment plan in the set of deployment plans corresponds to the set of deployment parameters for each instance of the application to be deployed; and fifth instructions configured to deploy multiple instances of the application into the data center using the set of deployment plans, wherein each instance of the application is unique, and wherein the computer readable recording medium does not consist of transitory, propagating signals. - View Dependent Claims (14, 15, 16, 17)
-
-
18. A computer implemented method for deploying and instantiating multiple instances of an application in a data center, the computer implemented method comprising:
-
a computer creating a deployment plan template for the application, wherein the deployment plan template includes configuration settings of the application, and wherein the configuration settings include at least one of network configurations, operating systems which the application runs on, and combinations of software stack supporting the application; the computer defining a set of deployment parameters for each instance of the application to be deployed; the computer associating the deployment plan template with the set of deployment parameters for each instance of the application to be deployed; the computer generating a set of deployment plans, wherein each deployment plan in the set of deployment plans corresponds to the set of deployment parameters for each instance of the application to be deployed; the computer deploying multiple instances of the application into the data center using the set of deployment plans, wherein each instance of the application is unique; the computer creating a service catalog item by referring to the deployment plan template; the computer inheriting the set of deployment parameters as a set of service parameters for the service catalog item; the computer defining a set of service parameters that is specific to the service catalog item; the computer defining a set of service parameters that persists across multiple application instances; the computer placing the service catalog item in a service catalog; responsive to an order placed by a user for a service catalog item, the computer processing the order by resolving the set of service parameters; responsive to processing the order, the computer creating an application model for a service of the service catalog item, generating a deployment plan from the deployment plan template for the application, wherein the deployment plan is generated using resolved service parameters and order parameters, and saving the generated deployment plan along with the created application model; further responsive to processing the order, the computer generating an application instance based on information obtained from the created application model and the generated deployment plan, and deploying the application instance into the data center; responsive to receiving a modify order comprising a modified service catalog item, the computer modifying an existing application instance using one of a same and additional set of deployment parameters; and responsive to one of a user termination and a service term expiration, the computer undeploying an existing application instance, and releasing resources occupied by the existing application instance.
-
Specification