Methods and systems that provision applications across multiple computer systems

US11032145B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11032145-B2
Application numberUS-201815878304-A
CountryUS
Kind codeB2
Filing dateJan 23, 2018
Priority dateJan 23, 2018
Publication dateJun 8, 2021
Grant dateJun 8, 2021

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.

The current document is directed to an automated-application-installation subsystem that provisions, installs, and configures applications across cloud-computing providers. The automated-application-installation subsystem employs an application blueprint to identify components to provisions, including component specifications and constraints, and to identify interdependencies between components. The automated-application-installation subsystem then determines a cost-effective provisioning of the identified components across available cloud-computing providers and installs the application according to the cost-effective provisioning. When less expensive, storage and computer-instruction-execution components of the application may be allocated from different cloud=computing providers.

First claim

Opening claim text (preview).

The invention claimed is: 1. An automated-application subsystem of an automated-application-release-management system within a cloud-computing facility having multiple servers, data-storage devices, and one or more internal networks, the automated-application subsystem comprising: an application-blueprint-generation subsystem that generates an application blueprint; a resource-profile storage component that stores resource profiles, each resource profile describing computational resources that are allocable from computing facilities; computational-resource processors that each retrieves resource profiles from the resource-profile storage component, filters the computational resources described in the retrieved resource profiles, and returns candidate computational resources to an application provisioning engine; and the application-provisioning engine, to which an application blueprint is input, that requests candidate resources from the computational-resource processors, maps each computational resource specified in the application blueprint to a candidate resource and that uses the mapping to allocate computational resources for execution of the application described by the application blueprint. 2. The automated-application subsystem of claim 1 that is further incorporated in a workflow-based cloud-management system that additionally includes an infrastructure-management-and-administration subsystem and the workflow-execution engine. 3. The automated-application subsystem of claim 1 wherein the application blueprint generated by the application-blueprint-generation subsystem describes the computational resources and application components that together compose an executing application, including specifications of the computational resources and application components, constraints, characteristics, and dependencies of the computational resources and application components, and interdependencies among computational resources and application components. 4. The automated-application subsystem of claim 3 wherein each resource profile describes available computational resources of a particular resource class provided by a particular computing facility; and wherein each resource profile includes one or more resource items that describes a particular type of computational resource of the resource class provided by the particular computing facility. 5. The automated-application subsystem of claim 3 wherein the computational-resource processors include one or more of: a CPU/memory computational-resource processor; a network processor; and a storage processor. 6. The automated-application subsystem of claim 5 wherein a storage processor receives, in a request for candidate storage resources, specifications, constraints, characteristics, and dependencies for one or more storage resources; and wherein the storage processor returns one or more candidate storage resources for each storage resource specified in the specifications. 7. The automated-application subsystem of claim 5 wherein a storage-resource specification includes one or more of: an indication of a storage-device type; an indication of a storage-device access mode; an indication of the sizes of data-storage units provided by the data-storage device; and an indication of data-storage features for high-availability, data redundancy, and data encryption. 8. The automated-application subsystem of claim 5 wherein a set of storage-resource characterizations includes one or more of: an indication of an access failure rate; an indication of a failure frequency; an indication of support for data encryption; and an indication of data persistency. 9. The automated-application subsystem of claim 5 wherein a set of storage-resource dependencies includes one or more of: a number of application instances that access the storage resource; locations of application instances that access the storage resource; workload-types of application instances that access the storage resource; an application type; and an application version. 10. The automated-application subsystem of claim 5 wherein a set of storage-resource constraints includes one or more of: an indication of a minimum storage-device capacity; an indication of a minimum average data-reading rate; an indication of a minimum average data-writing rate; an indication of a minimum average access latency; an indication of a maximum average access latency; an indication of a maximum failure rate; and an indication of a maximum failure frequency. 11. The automated-application subsystem of claim 3 wherein the application-provisioning engine, to which an application blueprint is input, maps each computational resource specified in the application blueprint to a candidate resource by: considering possible mappings of computational resources specified in the application blueprint to candidate resources returned by the computational-resource processors; for each of the considered possible mappings, determining whether the mapping complies with inter-computing-resource constraints and dependencies included in the application blueprint, mapping additional computational resources needed to interconnect computational resources in the mapping to candidate computational resources to generate a complete mapping, and determining a cost for the complete mapping; and selecting a lowest-cost complete mapping for provisioning the application. 12. The automated-application subsystem of claim 10 wherein the additional computational resources include network resources that securely interconnect virtual machines to remote data-storage facilities. 13. The automated-application subsystem of claim 1 wherein the mapping allocates processing and memory resources for an application instance from a first computing facility and allocates storage resources for the application instance from a second computing facility. 14. The automated-application subsystem of claim 1 further comprising: a provider monitor that monitors computing facilities from which computational resources are allocated to determine allocable resources currently provided by the computing facilities; generates new resource profiles for newly identified computing facilities, updates resource profiles for computing facilities for which resource profiles have been previously generated, and maintains the newly generated and updated resource profiles in the resource-profile storage component. 15. A method, carried out by an automated-application subsystem of an automated-application-release-management system within a cloud-computing facility having multiple servers, data-storage devices, and one or more internal networks, that maps computational resources specified in an application blueprint to computational resources available from computing facilities, the method comprising: receiving an application blueprint; for each of one or more resource classes, extracting specifications, characteristics, constraints, and dependencies for each computational resource of the resource class from the received application blueprint; furnishing the extracting specifications, characteristics, constraints, and dependencies to a computational-resource processor that retrieves resource profiles from a resource-profile storage component, filters the computational resources described in the retrieved resource profiles using the extracted specifications, characteristics, constraints, and dependencies, and returns candidate computational resources; mapping each computational resource specified in the application blueprint to a candidate

Assignees

Inventors

Classifications

  • Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements · CPC title

  • Terminal profiles · CPC title

  • Resource planning, allocation, distributing or scheduling for enterprises or organisations · CPC title

  • for reduction of network costs (H04L41/0833 takes precedence) · CPC title

  • for initial configuration or provisioning, e.g. plug-and-play · 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 US11032145B2 cover?
The current document is directed to an automated-application-installation subsystem that provisions, installs, and configures applications across cloud-computing providers. The automated-application-installation subsystem employs an application blueprint to identify components to provisions, including component specifications and constraints, and to identify interdependencies between components…
Who is the assignee on this patent?
Vmware Inc
What technology area does this patent fall under?
Primary CPC classification H04L41/0895. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jun 08 2021 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 6 related publications on this page (citations in our corpus or others sharing the same primary CPC).