Cloud platform architecture
First Claim
1. A method comprising:
- receiving, by a cloud controller executing on one or more first virtual machines of a cloud computing platform and from a development environment executing on a client device, a web application, the web application being compatible with a runtime environment available from the cloud computing platform;
submitting, by the cloud controller and to a service provisioner executing on one or more second virtual machines of the cloud computing platform, a request for available services of the cloud computing platform, wherein the service provisioner includes a plurality of shim components, wherein each shim component of the plurality of shim components maintains respective service provisioning data for each of the available services of the cloud computing platform;
receiving, by the cloud controller from one or more shim components of the service provisioner, service provisioning data for one or more available services of the cloud computing platform, wherein the service provisioning data for each of the available services comprises network addressing information for the web application to locate the corresponding available service within the cloud computing platform;
receiving, by the cloud controller from the development environment executing on the client device, a user selection of a particular available service of the one or more available services of the cloud computing platform;
binding, by the cloud controller, the selected available service to the web application, including editing the web application to insert at least a portion of the received service provisioning data for the selected available service into the web application;
generating, by the cloud controller, a start script for starting the runtime environment and launching the web application; and
packaging, by the cloud controller, the runtime environment, start script, and the edited web application into a web application deployment package,wherein each of the one or more first virtual machines and one or more second virtual machines is executed by a computer of the cloud computing platform.
3 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 (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
30 Claims
-
1. A method comprising:
-
receiving, by a cloud controller executing on one or more first virtual machines of a cloud computing platform and from a development environment executing on a client device, a web application, the web application being compatible with a runtime environment available from the cloud computing platform; submitting, by the cloud controller and to a service provisioner executing on one or more second virtual machines of the cloud computing platform, a request for available services of the cloud computing platform, wherein the service provisioner includes a plurality of shim components, wherein each shim component of the plurality of shim components maintains respective service provisioning data for each of the available services of the cloud computing platform; receiving, by the cloud controller from one or more shim components of the service provisioner, service provisioning data for one or more available services of the cloud computing platform, wherein the service provisioning data for each of the available services comprises network addressing information for the web application to locate the corresponding available service within the cloud computing platform; receiving, by the cloud controller from the development environment executing on the client device, a user selection of a particular available service of the one or more available services of the cloud computing platform; binding, by the cloud controller, the selected available service to the web application, including editing the web application to insert at least a portion of the received service provisioning data for the selected available service into the web application; generating, by the cloud controller, a start script for starting the runtime environment and launching the web application; and packaging, by the cloud controller, the runtime environment, start script, and the edited web application into a web application deployment package, wherein each of the one or more first virtual machines and one or more second virtual machines is executed by a computer of the cloud computing platform. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method comprising:
-
receiving, by a container virtual machine of a cloud computing platform, a request broadcast from a cloud controller requesting to launch a web application; indicating, through a deployment agent of the container virtual machine, that the container virtual machine is available to host the web application; fetching, by the deployment agent, a web application deployment package through a link provided by the cloud controller for downloading the web application deployment package, the web application deployment package comprising a start script, a web application having service provisioning data provided by one or more of a plurality of shim components of the cloud computing platform, and information on a runtime environment for executing the web application, wherein each shim component maintains respective service provisioning data for each of a plurality of available services in the cloud computing platform; unpacking the web application deployment package, including installing the runtime environment and loading the application program into the runtime environment; executing the starting script to spawn a process in the container virtual machine that launches the runtime environment and starts the web application in the runtime environment; and broadcasting, by the deployment agent and upon successful start of the web application, network address information of the container virtual machine and a port number for accessing the web application, wherein the container virtual machine and the cloud controller execute on one or more computers of the cloud computing platform. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A system comprising:
-
one or more computers; and one or more storage devices storing instructions that, when executed by the one or more computers, cause the one or more computers to perform operations comprising; receiving, by a cloud controller executing on one or more first virtual machines of a cloud computing platform and from a development environment executing on a client device, a web application, the web application being compatible with a runtime environment available from the cloud computing platform; submitting, by the cloud controller and to a service provisioner executing on one or more second virtual machines of the cloud computing platform, a request for available services of the cloud computing platform, wherein the service provisioner includes a plurality of shim components, wherein each shim component of the plurality of shim components maintains respective service provisioning data for each of the available services of the cloud computing platform; receiving, by the cloud controller from one or more shim components of the service provisioner, service provisioning data for one or more available services of the cloud computing platform, wherein the service provisioning data for each of the available services comprises network addressing information for the web application to locate the corresponding available service within the cloud computing platform; receiving, by the cloud controller from the development environment executing on the client device, a user selection of a particular available service of the one or more available services of the cloud computing platform; binding, by the cloud controller, the selected available service to the web application, including editing the web application to insert at least a portion of the received service provisioning data for the selected available service into the web application; generating, by the cloud controller, a start script for starting the runtime environment and launching the web application; and packaging, by the cloud controller, the runtime environment, start script, and the edited web application into a web application deployment package, wherein each of the one or more first virtual machines and one or more second virtual machines is executed by the one or more computers. - View Dependent Claims (15, 16, 17, 18)
-
-
19. A system comprising:
-
one or more computers; a non-transitory storage device storing instructions that, when executed by the one or more computers, cause the one or more computers to perform operations comprising; receiving, by a container virtual machine of a cloud computing platform, a request broadcast from a cloud controller requesting to launch a web application; indicating, through a deployment agent of the container virtual machine, that the container virtual machine is available to host the web application; fetching, by the deployment agent, a web application deployment package through a link provided by the cloud controller for downloading the web application deployment package, the web application deployment package comprising a start script, a web application having service provisioning data provided by one or more of a plurality of shim components of the cloud computing platform, and information on a runtime environment for executing the web application, wherein each shim component maintains respective service provisioning data for each of a plurality of available services in the cloud computing platform; unpacking the web application deployment package, including installing the runtime environment and loading the web application program into the runtime environment; executing the starting script to spawn a process in the container virtual machine that launches the runtime environment and starts the web application in the runtime environment; and broadcasting, by the deployment agent and upon successful start of the web application, network address information of the container virtual machine and a port number for accessing the web application, wherein the container virtual machine and the cloud controller execute on the one or more computers. - View Dependent Claims (20, 21, 22, 23, 24)
-
-
25. A non-transitory storage device storing instructions that, when executed by one or more computers, cause the one or more computers to perform operations comprising:
-
receiving, by a container virtual machine of a cloud computing platform, a request broadcast from a cloud controller requesting to launch a web application; indicating, through a deployment agent of the container virtual machine, that the container virtual machine is available to host the web application; fetching, by the deployment agent, a web application deployment package through a link provided by the cloud controller for downloading the web application deployment package, the web application deployment package comprising a start script, a web application having service provisioning data provided by one or more of a plurality of shim components of the cloud computing platform, and information on a runtime environment for executing the web application, wherein each shim component maintains respective service provisioning data for each of a plurality of available services in the cloud computing platform; unpacking the web application deployment package, including installing the runtime environment and loading the web application program into the runtime environment; executing the starting script to spawn a process in the container virtual machine that launches the runtime environment and starts the web application in the runtime environment; and broadcasting, by the deployment agent and upon successful start of the web application, network address information of the container virtual machine and a port number for accessing the web application, wherein the container virtual machine and the cloud controller execute on the one or more computers. - View Dependent Claims (26, 27, 28, 29, 30)
-
Specification