9967318

Apparatus, Systems, and Methods for Cloud Agnostic Multi-Tier Application Modeling and Deployment

PublishedMay 8, 2018
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
21 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A method comprising: at a device including a processor and a non-transitory memory: obtaining, for a multi-tier application comprising a plurality of components, dependency information for each component in the plurality of components, wherein the dependency information for a component in the plurality of components comprises information indicating prerequisites for initiating execution of the component; deriving a cloud agnostic representation of the multi-tier application based, in part on the dependency information, wherein the cloud agnostic representation of the multi-tier application comprises metadata for the multi-tier application without cloud-specific information; provisioning a plurality of virtual machines to run the plurality of components of the multi-tier application based on the dependency information; deriving, from the cloud agnostic representation, cloud-specific commands for deploying the multi-tier application on the plurality of virtual machines; and deploying the multi-tier application on the plurality of virtual machines using the cloud-specific commands in order to obtain a cloud specific implementation of the cloud agnostic representation of the multi-tier application.

2

2. The method of claim 1 , wherein the dependency information for each component further comprises residence dependency information and the metadata further comprises: Virtual Machine (VM) co-residency information for a first subset of the plurality of components when deployed, the VM co-residency information comprising: information indicating a compatibility of at least one first group of components in the first subset for co-residency; or information indicating an incompatibility of at least one second group of components in the first subset for co-residency; or VM placement information for a second subset of the plurality of components when deployed, the VM placement information comprising a mapping of each component in the second subset to one or more VMs.

3

3. The method of claim 1 , wherein each of the plurality of components are selected from at least one of: a service library, the service library comprising a plurality of services, wherein each of the plurality of services is associated with a corresponding service configuration metadata; or an application catalog, the application catalog comprising a plurality of predefined multi-tier applications, wherein each of the plurality of predefined multi-tier applications is associated with a corresponding application metadata.

4

4. The method of claim 3 , wherein the multi-tier application is obtained by: displaying a representation of the plurality of services in the service library and a representation of applications in the application catalog in a Graphical User Interface (GUI); and displaying, based on the dependency information and in response to a selection of each of the plurality of components, a graphical representation of the multi-tier application on the GUI the graphical representation reflecting the selected components and dependencies between the selected components.

5

5. The method of claim 3 , wherein the plurality of services comprise at least one of: a web server; a relational database; a non-relational database; a load balancing service; a front-end cache; a back-end cache; a message bus; an application server; Virtual Machine Image (VMI) based services; or external endpoint based services.

6

6. The method of claim 1 , wherein deploying the multi-tier application on the plurality of virtual machines comprises: obtaining, based on the metadata in the cloud agnostic representation, the cloud specific implementation of the cloud agnostic representation of the multi-tier application.

7

7. An apparatus comprising: a memory comprising dependency information for a component in a plurality of components of a multi-tier application, wherein the dependency information for the component comprises information indicating prerequisites for initiating execution of the component; and a processor coupled to the memory, wherein the processor is configured to: obtain, for the multi-tier application, the dependency information for each component in the plurality of components; derive a cloud agnostic representation of the multi-tier application based, in part, on the dependency information, wherein the cloud agnostic representation of the multi-tier application comprises metadata for the multi-tier application without cloud-specific information; provision a plurality of virtual machines to run the plurality of components of the multi-tier application based on the dependency information; derive, from the cloud agnostic representation, cloud-specific commands for deploying the multi-tier application on the plurality of virtual machines; and deploy the multi-tier application on the plurality of virtual machines using the cloud-specific commands in order to obtain a cloud specific implementation of the cloud agnostic representation of the multi-tier application.

8

8. The apparatus of claim 7 , wherein the dependency information for each component further comprises residence dependency information and the processor is further configured to: obtain the metadata based on the residence dependency information, the metadata comprising: Virtual Machine (VM) co-residency information for a first subset of the plurality of components when deployed, the VM co-residency information comprising: information indicating a compatibility of at least one first group of components in the first subset for co-residency; or information indicating an incompatibility of at least one second group of components in the first subset for co-residency; or VM placement information for a second subset of the plurality of components when deployed, the Vivi placement information comprising a mapping of each component in the second subset to one or more VMs.

9

9. The apparatus of claim 7 , wherein: the memory comprises: a service library, the service library comprising a plurality of services, wherein each of the plurality of services is associated with a corresponding service configuration metadata; or an application catalog, the application catalog comprising a plurality of predefined multi-tier applications, wherein each of the plurality of pre-defined multi-tier applications is associated with a corresponding application metadata; and the processor is configured to: select each of the plurality of components from at least one of the service library or the application catalog.

10

10. The apparatus of claim 9 , wherein the apparatus further comprises a display coupled to the processor, wherein to obtain the multi-tier application, the processor is further configured to: display, on the display, a representation of the plurality of services in the service library and a representation of applications in the application catalog in a Graphical User Interface (GUI); and display, on the display, based on the dependency information and in response to a selection of each of the plurality of components, a graphical representation of the multi-tier application on the GUI, the graphical representation reflecting the selected components and dependencies between the selected components.

11

11. The apparatus of claim 9 , wherein the plurality of services comprise at least one of: a web server; a relational database; a non-relational database; a load balancing service; a front-end cache; a back-end cache; a message bus; an application server; Virtual Machine Image (VW) based services; or external endpoint based services.

12

12. The apparatus of claim 7 , wherein to deploy the multi-tier application on the plurality of virtual machines, the processor is configured to: obtain, based on the metadata in the cloud agnostic representation, the cloud specific implementation of the cloud agnostic representation of the multi-tier application.

13

13. A non-transitory computer-readable medium comprising instructions, which, when executed by a processor, perform steps in a method, the steps comprising: obtaining, for a multi-tier application comprising a plurality of components, dependency information for each component in the plurality of components, wherein the dependency information for a component in the plurality of components comprises information indicating prerequisites for initiating execution of the component; deriving a cloud agnostic representation of the multi-tier application based, in part on the dependency information, wherein the cloud agnostic representation of the multi-tier application comprises metadata for the multi-tier application without cloud-specific information; provisioning a plurality of virtual machines to run the plurality of components of the multi-tier application based on the dependency information; deriving, from the cloud agnostic representation, cloud-specific commands for deploying the multi-tier application on the plurality of virtual machines; and deploying the multi-tier application on the plurality of virtual machines using the cloud-specific commands in order to obtain a cloud specific implementation of the cloud agnostic representation of the multi-tier application.

14

14. The computer-readable medium of claim 13 , wherein the dependency information for each component further comprises residence dependency information and the metadata further comprises: Virtual Machine (VM) co-residency information for a first subset of the plurality of components when deployed, the VM co-residency information comprising: information indicating a compatibility of at least one first group of components in the first subset for co-residency; or information indicating an incompatibility of at least one second group of components in the first subset for co-residency; or VM placement information for a second subset of the plurality of components when deployed, the VM: placement information comprising a mapping of each component in the second subset to one or more VMs.

15

15. The computer-readable medium of claim 13 , wherein each of the plurality of components are selected from at least one of: a service library, the service library comprising a plurality of services, wherein each of the plurality of services is associated with a corresponding service configuration metadata; or an application catalog, the application catalog comprising a plurality of predefined multi-tier applications, wherein each of the plurality of predefined multi-tier applications is associated with a corresponding application metadata.

16

16. The computer-readable medium of claim 15 , wherein the multi-tier application is obtained by: displaying a representation of the plurality of services in the service library and a representation of applications in the application catalog in a Graphical User Interface (GUI); and displaying, based on the dependency information and in response to a selection of each of the plurality of components, a graphical representation of the multi-tier application on the GUI, the graphical representation reflecting the selected components and dependencies between the selected components.

17

17. The method computer-readable medium of claim 15 , wherein the plurality of services comprise at least one of: a web server; a relational database; a non-relational database; a load balancing service; a front-end cache; a back-end cache; a message bus; an application server; Virtual Machine Image (VW) based services; or external endpoint based services.

18

18. The computer-readable medium of claim 13 , wherein deploying the multi-tier application on the at least one of the plurality of clouds comprises: obtaining, based on the metadata in the cloud agnostic representation, the cloud specific implementation of the cloud agnostic representation of the multi-tier application.

19

19. The method of claim 3 further comprising: selecting a previously stored application from the application catalog; modifying the previously stored application to obtain a modified application, including adding or removing one or more services from the service library and adding or removing one or more previously stored applications from the application catalog; obtaining the dependency information for the modified application; and saving the modified application in the application catalog as the multi-tier application.

20

20. The apparatus of claim 9 , wherein the processor is further configured to: select a previously stored application from the application catalog; modify the previously stored application to obtain a modified application, including adding or removing one or more services from the service library and adding or removing one or more previously stored applications from the application catalog; obtain the dependency information for the modified application; and save the modified application in the application catalog as the multi-tier application.

21

21. The computer-readable medium of claim 15 further comprising: selecting a previously stored application from the application catalog; modifying the previously stored application to obtain a modified application, including adding or removing one or more services from the service library and adding or removing one or more previously stored applications from the application catalog; obtaining the dependency information for the modified application; and saving the modified application in the application catalog as the multi-tier application.

Patent Metadata

Filing Date

Unknown

Publication Date

May 8, 2018

Inventors

Tianying FU
Gautam JOSHI
Saad Ali MALIK
Abhinav NAGARAJ

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “APPARATUS, SYSTEMS, AND METHODS FOR CLOUD AGNOSTIC MULTI-TIER APPLICATION MODELING AND DEPLOYMENT” (9967318). https://patentable.app/patents/9967318

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.