Methods and systems that provision distributed applications that invoke functions provided by a distributed-function-as-a-service feature

US11038778B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11038778-B2
Application numberUS-201816216749-A
CountryUS
Kind codeB2
Filing dateDec 11, 2018
Priority dateDec 11, 2018
Publication dateJun 15, 2021
Grant dateJun 15, 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, including applications that invoke functions provisioned and executed through a distributed-function-as-a-service feature of the automated-application-installation subsystem. The automated-application-installation subsystem employs application blueprints to identify components to provision. An application blueprint generally includes component specifications, constraints, and interdependencies. 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.

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 for a distributed application; an application-provisioning engine, to which the application blueprint is input, that allocates computational resources from one or more computing facilities for execution of the application described by the application blueprint, and interfaces to a distributed-function-service provisioning interface provided by a distributed-function-service to instantiate user-defined functions specified in the application blueprint; and a distributed-function-service execution interface provided by the distributed-function-service through which the distributed application calls the user-defined functions. 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 a 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 distributed 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 1 wherein the distributed-function-service instantiates user-defined functions within execution environments acquired by the distributed-function-service from multiple cloud-computing facilities, including virtual machines and containers within virtual machines. 5. The automated-application subsystem of claim 4 wherein the distributed-function-service, in addition to the distributed-function-service execution interface and the distributed-function-service provisioning interface, further comprises a provisioning-engine database that stores information about user-defined functions, execution environments acquired by the distributed-function-service, and other information used by the distributed-function-service to instantiate and re-instantiate user-defined functions within execution acquired by the distributed-function-service. 6. The automated-application subsystem of claim 5 wherein the distributed-function-service further comprises: a function-as-a-service execution engine that instantiates and executes user-defined functions on the multiple cloud-computing facilities; and a distributed-function-service execution engine that receives, through the distributed-function-service execution interface, an indication of a user-defined-function and arguments supplied to the user-defined-function, transforms and packages the received indication of the user-defined-function and arguments into calling information, and passes the calling information to the function-as-a-service execution engine. 7. The automated-application subsystem of claim 6 wherein the distributed-function-service execution engine accesses stored information that specifies a format and a content for the calling information for the indicated user-defined function, the stored information maintained in the provisioning-engine database and recently accessed stored information maintained in a memory cache. 8. The automated-application subsystem of claim 6 wherein the distributed-function-service execution engine further comprises an infrastructure configuration engine that configures the function-as-a-service execution engine to use bootstrapped virtual machines acquired by the distributed-function-service execution engine for instantiating containers for execution of user-defined functions. 9. The automated-application subsystem of claim 6 wherein the distributed-function-service further comprises a bootstrap service that boots up virtual machines to prepare them for hosting user-defined functions. 10. The automated-application subsystem of claim 6 wherein the distributed-function-service further comprises an infrastructure health monitor that continuously monitors acquired virtual machines so that, when one or more of the virtual machines have been terminated by the cloud-computing facilities, replacement virtual machines are acquired, as needed, by the distributed-function-service. 11. The automated-application subsystem of claim 5 wherein the distributed-function-service further comprises: a latency filter that evaluates candidate cloud-computing facilities with respect to latency requirements associated with a user-defined function; a geo-location-constraints analyzer that evaluates candidate cloud-computing facilities with respect to location constraints and requirements associated with a user-defined function; and a function-affinity filter that determines a list of candidate cloud-computing facilities within which to instantiate a user-defined function by; characterizing the user-defined function, accessing an infrastructure registry to generate a list of candidate cloud-computing facilities on which the user-defined function can be instantiated, filtering the list of candidate cloud-computing facilities, via a call to the latency filter, to select candidate cloud-computing facilities compatible with latency requirements associated with the user-defined function, filtering the list of candidate cloud-computing facilities, via a call to the geo-location-constraints analyzer, to select candidate cloud-computing facilities compatible with location requirements associated with the user-defined function, and filtering the list of candidate cloud-computing facilities for compliance with one or more cloud-computing-facility-selection policies. 12. The automated-application subsystem of claim 11 wherein the distributed-function-service further comprises a spot-bid service that accesses cloud-computing vendors to acquire virtual machines for instantiation of user-defined functions. 13. The automated-application subsystem of claim 12 wherein the distributed-function-service further comprises a distributed-function-service provisioning engine that receives an indication of a user-defined function in a request from the distributed-function-service provisioning interface, searches the infrastructure registry for an already-instantiated user-defined function that matches the indicated user-defined function, and when no already-instantiated user-function is found in the provisioning-engine database, calls the function affinity filter to obtain a list of candidate cloud-computing facilities on which to instantiate the user-defined function, and and calls the spot-bid service to acquire an initial execution environment from a cloud-computing facility for execution of the user-defined function. 14. The automated-application subsystem of claim 12 wherein the distributed-function-service further comprises an infrastructure prediction engine that periodically reevaluates the computational resources acquired for user-defined functions in order to ensure that the expected demand for execution of the user-defined functions can be satisfied by the computational resources acquired for execution of the user-defined function from the multiple cloud-computing facilities; m

Assignees

Inventors

Classifications

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

  • Discovery or management thereof, e.g. service location protocol [SLP] or web services · CPC title

  • Automatic or semi-automatic definitions, e.g. definition templates · CPC title

  • G06F9/5005Primary

    to service a request · CPC title

  • Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components · 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 US11038778B2 cover?
The current document is directed to an automated-application-installation subsystem that provisions, installs, and configures applications across cloud-computing providers, including applications that invoke functions provisioned and executed through a distributed-function-as-a-service feature of the automated-application-installation subsystem. The automated-application-installation subsystem …
Who is the assignee on this patent?
Vmware Inc
What technology area does this patent fall under?
Primary CPC classification G06F9/5005. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jun 15 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 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).