Droplet execution engine for dynamic server application deployment
First Claim
1. A method comprising:
- receiving, by a cloud controller of a cloud application platform installed on a distributed system comprising a hardware infrastructure having a plurality of physical servers, a first request to launch an application on the cloud application platform;
broadcasting, by the cloud controller to each of the plurality of deployment agents executing in respective containers hosted within virtual execution spaces of each of the plurality of virtual machines that were previously launched on the plurality of different respective physical servers of the hardware infrastructure, a second request to indicate availability, of a particular container hosted within the virtual execution space of a particular virtual machine previously launched on a particular physical server of the hardware infrastructure, to host the application on the cloud application platform;
providing, to the cloud controller by a particular deployment agent executing in a particular container hosted within the virtual execution space of a particular virtual machine previously launched on a particular physical server of the hardware infrastructure of the cloud application platform, an indication of availability of the particular container to host the application;
in response to receiving the indication of availability, providing, by the cloud controller to the particular deployment agent, a link to download an application deployment package for the application;
upon obtaining the link, downloading, by the particular deployment agent, the application deployment package using the link;
installing, by the particular deployment agent, a runtime environment for the application in the particular container of the particular virtual machine;
executing, by the particular deployment agent, a startup script in the application deployment package, including launching the runtime environment and starting the application in the launched runtime environment in the particular container of the particular virtual machine; and
upon successfully starting the application, broadcasting, by the particular deployment agent, network address information of the particular container and a port number of the application.
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 and dynamically binds available services by appropriately inserting service provisioning data 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. 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.
110 Citations
20 Claims
-
1. A method comprising:
-
receiving, by a cloud controller of a cloud application platform installed on a distributed system comprising a hardware infrastructure having a plurality of physical servers, a first request to launch an application on the cloud application platform; broadcasting, by the cloud controller to each of the plurality of deployment agents executing in respective containers hosted within virtual execution spaces of each of the plurality of virtual machines that were previously launched on the plurality of different respective physical servers of the hardware infrastructure, a second request to indicate availability, of a particular container hosted within the virtual execution space of a particular virtual machine previously launched on a particular physical server of the hardware infrastructure, to host the application on the cloud application platform; providing, to the cloud controller by a particular deployment agent executing in a particular container hosted within the virtual execution space of a particular virtual machine previously launched on a particular physical server of the hardware infrastructure of the cloud application platform, an indication of availability of the particular container to host the application; in response to receiving the indication of availability, providing, by the cloud controller to the particular deployment agent, a link to download an application deployment package for the application; upon obtaining the link, downloading, by the particular deployment agent, the application deployment package using the link; installing, by the particular deployment agent, a runtime environment for the application in the particular container of the particular virtual machine; executing, by the particular deployment agent, a startup script in the application deployment package, including launching the runtime environment and starting the application in the launched runtime environment in the particular container of the particular virtual machine; and upon successfully starting the application, broadcasting, by the particular deployment agent, network address information of the particular container and a port number of the application. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system comprising:
-
a distributed system comprising a hardware infrastructure having a plurality of physical servers; and one or more non-transitory storage devices storing instructions that are operable, when executed by the plurality of physical servers, to cause the plurality of physical servers to perform operations comprising; receiving, by a cloud controller of a cloud application platform installed on the distributed system, a first request to launch an application on the cloud application platform; broadcasting, by the cloud controller to each of the plurality of deployment agents executing in respective containers hosted within virtual execution spaces of each of the plurality of virtual machines that were previously launched on the plurality of different respective physical servers of the hardware infrastructure, a second request to indicate availability, of a particular container hosted within the virtual execution space of a particular virtual machine previously launched on a particular physical server of the hardware infrastructure, to host the application on the cloud application platform; providing, to the cloud controller by a particular deployment agent executing in a particular container hosted within the virtual execution space of a particular virtual machine previously launched on a particular physical server of the hardware infrastructure of the cloud application platform, an indication of availability of the particular container to host the application; in response to receiving the indication of availability, providing, by the cloud controller to the particular deployment agent, a link to download an application deployment package for the application; upon obtaining the link, downloading, by the particular deployment agent, the application deployment package using the link; installing, by the particular deployment agent, a runtime environment for the application in the particular container of the particular virtual machine; executing, by the particular deployment agent, a startup script in the application deployment package, including launching the runtime environment and starting the application in the launched runtime environment in the particular container of the particular virtual machine; and upon successfully starting the application, broadcasting, by the particular deployment agent, network address information of the particular container and a port number of the application. - View Dependent Claims (9, 10, 11, 12, 18, 19)
-
-
13. One or more non-transitory storage devices storing instructions that are operable, when executed by a plurality of physical servers of a distributed system, to cause the plurality of physical servers to perform operations comprising:
-
receiving, by a cloud controller of a cloud application platform installed on the distributed system, a first request to launch an application on the cloud application platform; broadcasting, by the cloud controller, to each of the plurality of deployment agents executing in respective containers hosted within virtual execution spaces of each of the plurality of virtual machines that were previously launched on the plurality of different respective physical servers of a hardware infrastructure of the distributed system, a second request to indicate availability, of a particular container hosted within the virtual execution space of a particular virtual machine previously launched on a particular physical server of the hardware infrastructure, to host the application on the cloud application platform; providing, to the cloud controller by a particular deployment agent executing in a particular container hosted within the virtual execution space of a particular virtual machine previously launched on a particular physical server of the hardware infrastructure of the cloud application platform, an indication of availability of the particular container to host the application; in response to receiving the indication of availability, providing, by the cloud controller to the particular deployment agent, a link to download an application deployment package for the application; upon obtaining the link, downloading, by the particular deployment agent, the application deployment package using the link; installing, by the particular deployment agent, a runtime environment for the application in the particular container of the particular virtual machine; executing, by the particular deployment agent, a startup script in the application deployment package, including launching the runtime environment and starting the application in the launched runtime environment in the particular container of the particular virtual machine; and upon successfully starting the application, broadcasting, by the particular deployment agent, network address information of the particular container and a port number of the application. - View Dependent Claims (14, 15, 16, 17, 20)
-
Specification