Single, logical, multi-tier application blueprint used for deployment and management of multiple physical applications in a cloud infrastructure

US9645858B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9645858-B2
Application numberUS-201514727778-A
CountryUS
Kind codeB2
Filing dateJun 1, 2015
Priority dateMar 2, 2012
Publication dateMay 9, 2017
Grant dateMay 9, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A deployment system enables a developer to define a logical, multi-tier application blueprint that can be used to create and manage (e.g., redeploy, upgrade, backup, patch) multiple applications in a cloud infrastructure. In the application blueprint, the developer models an overall application architecture, or topology, that includes individual and clustered nodes (e.g., VMs), logical templates, cloud providers, deployment environments, software services, application-specific code, properties, and dependencies between top-tier and second-tier components. The application can be deployed according to the application blueprint, which means any needed VMs are provisioned from the cloud infrastructure, and application components and software services are installed.

First claim

Opening claim text (preview).

We claim: 1. A method of deploying an application having application components, the method comprising: receiving a selected cloud environment on which to deploy the application; determining one or more templates used in a blueprint for the application, the one or more templates specifying virtual computing resources for the application, the blueprint specifying a topology having one or more virtual machines, and each of the one or more virtual machines being represented by each of the one or more templates; retrieving one or more cloud templates for the selected cloud environment that are mapped to the one or more templates of the blueprint, each of the one or more cloud templates defining a virtual machine having specified virtual computing resources; determining tasks to be executed for deploying the application components of the application based on the one or more cloud templates; determining one or more dependencies between the application components according to the blueprint; determining an order of the application components to be deployed based on the one or more dependencies; and generating a deployment plan for executing the task to deploy the application in the selected cloud environment based on the determined order. 2. The method of claim 1 , wherein the one or more dependencies are between a first application component executing on a first virtual computing resource and a second application component executing on a second virtual computing resource. 3. The method of claim 1 , further comprising: accessing a catalpa of virtual computing resources that includes definitions of the virtual computing resources and mapping each of the definitions of the virtual computing resources to a definition of a virtual machine that is available to be provisioned in the selected cloud environment. 4. The method of claim 3 , wherein the catalog includes definitions of the application components, each of the definitions of the application components referencing installation scripts for deploying the application components and one or more configuration properties. 5. The method of claim 3 , wherein the catalog comprises deployment environments that include definitions of virtual machines that is available to be provisioned in the deployment environments. 6. The method of claim 1 , further comprising: responsive to user input, assembling items from a catalog of a plurality of predefined application components configured to provide a software infrastructure for the application and a plurality of predefined virtual computing resources available in the selected cloud environment. 7. The method of method of claim 1 , wherein the step of deploying comprises: determining cloud computing resources of the selected cloud environment that are mapped to a topology of virtual computing resources; and provisioning the cloud computing resources and deploying the application components on the provisioned cloud computing resources according to dependencies defined in the topology. 8. A non-transitory computer-readable storage medium comprising instructions that, when executed in a computing device, perform operations comprising: receiving a selected cloud environment on which to deploy an application; determining one or more templates used in a blueprint for the application, the one or more templates specifying virtual computing resources for the application, the blueprint specifying a topology having one or more virtual machines, and each of the one or more virtual machines being represented by each of the one or more templates; retrieving one or more cloud templates for the selected cloud environment that are mapped to the one or more templates of the blueprint, each of the one or more cloud templates defining a virtual machine having specified virtual computing resources; determining tasks to be executed for deploying the application components of the application based on cloud templates; determining one or more dependences between the application components according to the blueprint; determining an order of the application components to be deployed based on the one or more dependencies; and generating a deployment plan for executing the tasks to deploy the application in the selected cloud environment based on the determined order. 9. The non-transitory computer-readable storage medium of claim 8 , wherein the instructions further comprise instructions identifying a dependency between a first application component executing on a first virtual computing resource and a second application component executing on a second virtual computing resource. 10. The non-transitory computer-readable storage medium of claim 8 , further comprising instructions for accessing a catalog of virtual computing resources that includes definitions of the virtual computing resources and mapping each of the definitions of the virtual computing resources to a definition of a virtual machine that is available to be provisioned in the selected cloud environment. 11. The non-transitory computer-readable storage medium of claim 10 , wherein the catalog of comprises definitions of the application components, each of the definitions of the application components referencing installation scripts for deploying the application components and one or more configuration properties. 12. The non-transitory computer-readable storage medium of claim 8 , further comprising instructions for accessing a catalog of deployment environments that includes definitions of virtual machines that is available to be provisioned in the deployment environments. 13. The non-transitory computer-readable storage medium of claim 8 , wherein the instructions further comprise instructions for: assembling items from a catalog of a plurality of predefined application components configured to provide a software infrastructure for the application and a plurality of predefined virtual computing resources available in the cloud environment. 14. The non-transitory computer-readable storage medium of dam 8 , wherein the instructions further comprise instructions for: in response to user input, determining cloud computing resources of the selected cloud environment that are mapped to the topology of virtual computing resources; and provisioning the cloud computing resources and according to dependencies defined in the topology. 15. A computer system for deploying an application having application components, the computer system comprising: a system memory; and a processor programmed to: receive a selected cloud environment on which to deploy the application; determine one or more templates used in a blueprint for the application, the one or more templates specifying virtual computing resources for the application, the blueprint specifying a topology having one or more virtual machines, and each of the one or more virtual machines being represented by each of the one or more templates; retrieve one or more cloud templates for the selected cloud environment that are mapped to the one or more templates of the blueprint, each of the one or more cloud templates defining a virtual machine having specified virtual computing resources; determine tasks to be executed for deploying the application components of the application based on cloud templates; determine one or more dependencies between the application components according to the blueprint; determine an order of the application components to be deployed based on the one or more dependencies; and generate a deployment plan for executing the task to deploy the application in the selected cloud environment based on the determi

Assignees

Inventors

Classifications

  • G06F8/60Primary

    Software deployment · CPC title

  • G06F9/5072Primary

    Grid computing · CPC title

  • Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs (mappping at compile time, see G06F8/451) · CPC title

  • Logical partitioning of resources; Management or configuration of virtualized resources (specific details on emulation or internal functioning of virtual machines G06F9/455) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9645858B2 cover?
A deployment system enables a developer to define a logical, multi-tier application blueprint that can be used to create and manage (e.g., redeploy, upgrade, backup, patch) multiple applications in a cloud infrastructure. In the application blueprint, the developer models an overall application architecture, or topology, that includes individual and clustered nodes (e.g., VMs), logical template…
Who is the assignee on this patent?
Vmware Inc
What technology area does this patent fall under?
Primary CPC classification G06F8/60. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 09 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).