Droplet execution engine for dynamic server application deployment
First Claim
1. A method comprising:
- receiving, by a service provisioner of a cloud computing environment from a cloud controller of the cloud computing environment, a request for information on a plurality of services provided by the cloud computing environment to a web application, the service provisioner and the services executing in one or more first virtual machines of the cloud computing environment;
upon receiving the request for information, generating, by a plurality of shim components maintained by the service provisioner, provisioning data for binding the services to the web application, wherein;
the shim components are different from one another;
each shim component corresponds to a respective service of the services;
each shim component is a component of the service provisioner and includes a stub corresponding to the respective service, the stub storing one or more attributes of the respective service, andgenerating the provisioning data comprises;
logging, by each shim component, into the respective service to generate credentials for the web application, the credentials allowing the web application to access the respective service; and
designating the one or more attributes stored in each respective shim component and the credentials generated by each respective shim component as the provisioning data;
providing, by the service provisioner to the cloud controller, the provisioning data as a response to the request for information;
binding, by the cloud controller, the services to the web application program, including inserting the provisioning data into contents of a web application package of the web application; and
deploying the web application program on one or more second virtual machines in the cloud computing environment using the web application package.
2 Assignments
0 Petitions
Accused Products
Abstract
A cloud computing environment provides the ability to deploy a web application that has been developed using one of a plurality of application frameworks and is configured to execute within one of a plurality of runtime environments. The cloud computing environment receives the web application in a package compatible with the runtime environment (e.g., a WAR file to be launched in an application server, for example) and dynamically binds available services by appropriately inserting service provisioning data (e.g., service network address, login credentials, etc.) into the package. The cloud computing environment then packages an instance of the runtime environment, a start script and the package into a web application deployment package, which is then transmitted to an application (e.g., container virtual machine, etc.). The application container unpacks the web application deployment package, installs the runtime environment, loads the web application package into the runtime environment and starts the start script, thereby deploying the web application in the application container.
-
Citations
27 Claims
-
1. A method comprising:
-
receiving, by a service provisioner of a cloud computing environment from a cloud controller of the cloud computing environment, a request for information on a plurality of services provided by the cloud computing environment to a web application, the service provisioner and the services executing in one or more first virtual machines of the cloud computing environment; upon receiving the request for information, generating, by a plurality of shim components maintained by the service provisioner, provisioning data for binding the services to the web application, wherein; the shim components are different from one another; each shim component corresponds to a respective service of the services; each shim component is a component of the service provisioner and includes a stub corresponding to the respective service, the stub storing one or more attributes of the respective service, and generating the provisioning data comprises; logging, by each shim component, into the respective service to generate credentials for the web application, the credentials allowing the web application to access the respective service; and designating the one or more attributes stored in each respective shim component and the credentials generated by each respective shim component as the provisioning data; providing, by the service provisioner to the cloud controller, the provisioning data as a response to the request for information; binding, by the cloud controller, the services to the web application program, including inserting the provisioning data into contents of a web application package of the web application; and deploying the web application program on one or more second virtual machines in the cloud computing environment using the web application package. - View Dependent Claims (4, 5, 6, 7, 8, 9, 10)
-
-
2. A computer program product, encoded on one or more non-transitory computer storage media, comprising instructions that when executed by one or more computers causes the one or more computers to perform operations comprising:
-
receiving, by a service provisioner of a cloud computing environment from a cloud controller of the cloud computing environment, a request for information on a plurality of services provided by the cloud computing environment to a web application, the service provisioner and the services executing in one or more first virtual machines of the cloud computing environment; upon receiving the request for information, generating, by a plurality of shim components maintained by the service provisioner, provisioning data for binding the services to the web application, wherein; the shim components are different from one another; each shim component corresponds to a respective service of the services; each shim component is a component of the service provisioner and includes a stub corresponding to the respective service, the stub storing one or more attributes of the respective service, and generating the provisioning data comprises; logging, by each shim component, into the respective service to generate credentials for the web application, the credentials allowing the web application to access the respective service; and designating the one or more attributes stored in each respective shim component and the credentials generated by each respective shim component as the provisioning data; providing, by the service provisioner to the cloud controller, the provisioning data as a response to the request for information; binding, by the cloud controller, the services to the web application program, including inserting the provisioning data into contents of a web application package of the web application; and deploying the web application program on one or more second virtual machines in the cloud computing environment using the web application package. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
3. A system configured to run an application container to dynamically host web applications, the system comprising one or more computers and one or more non-transitory storage devices storing instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising:
-
receiving, by a service provisioner of a cloud computing environment from a cloud controller of the cloud computing environment, a request for information on a plurality of services provided by the cloud computing environment to a web application, the service provisioner and the services executing in one or more first virtual machines of the cloud computing environment; upon receiving the request for information, generating, by a plurality of shim components maintained by the service provisioner, provisioning data for binding the services to the web application, wherein; the shim components are different from one another; each shim component corresponds to a respective service of the services; each shim component is a component of the service provisioner and includes a stub corresponding to the respective service, the stub storing one or more attributes of the respective service, and generating the provisioning data comprises; logging, by each shim component, into the respective service to generate credentials for the web application, the credentials allowing the web application to access the respective service; and designating the one or more attributes stored in each respective shim component and the credentials generated by each respective shim component as the provisioning data; providing, by the service provisioner to the cloud controller, the provisioning data as a response to the request for information; binding, by the cloud controller, the services to the web application program, including inserting the provisioning data into contents of a web application package of the web application; and deploying the web application program on one or more second virtual machines in the cloud computing environment using the web application package. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25, 26, 27)
-
Specification