Dynamic service provisioning using templatized infrastructure resources

US11429353B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-11429353-B1
Application numberUS-202017116860-A
CountryUS
Kind codeB1
Filing dateDec 9, 2020
Priority dateDec 9, 2020
Publication dateAug 30, 2022
Grant dateAug 30, 2022

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.

Features are disclosed for dynamically provisioning an application stack using a set of infrastructure resources. A computing device can receive an infrastructure template from an administrative device. Based on the infrastructure template, the computing device can determine a schema and an infrastructure as code. Using the schema, the computing device can receive a specification file from a developer device or an administrative device. The specification file can be a service specification file or an environment specification file. The computing device can inject the values of the specification file into the infrastructure as code. The computing device can use the injected infrastructure as code to generate and deploy the application stack to the developer device.

First claim

Opening claim text (preview).

What is claimed is: 1. A system comprising: a plurality of host computing devices; and an infrastructure provisioning system comprising computer-readable memory and one or more processors configured to: obtain an infrastructure template bundle from an administrator account, wherein the infrastructure template bundle defines a plurality of infrastructure resources for application stacks, wherein individual infrastructure resources of the plurality of infrastructure resources correspond individual infrastructure providers of a plurality of infrastructure providers, and wherein the infrastructure template bundle comprises a schema and an infrastructure as code template with one or more translation instructions, and wherein the schema identifies one or more fields for defining an application stack to be generated from the infrastructure template bundle, and wherein the one or more translation instructions specify one or more operations for including data associated with the schema into an infrastructure as code file generated from the infrastructure template bundle; obtain a specification file from a developer account, wherein the administrator account and the developer account are both associated with a same organizational account, the specification file comprising one or more field values corresponding to the one or more fields of the schema; execute the one or more translation instructions to generate the infrastructure as code file from the specification file and the infrastructure template bundle; deploy, using the infrastructure as code file, an instance of the application stack comprising the plurality of infrastructure resources on a subset of the plurality of host computing devices; determine one or more monitoring resources to monitor the plurality of infrastructure resources; monitor, by the one or more monitoring resources, infrastructure provider-specific health data associated with the plurality of infrastructure resources; and provide infrastructure provider-independent data to the developer account based at least partly on the infrastructure provider-specific health data. 2. The system of claim 1 , wherein the infrastructure provisioning system is further configured to obtain, from the administrator account, an environment template defining a second plurality of infrastructure resources for a computing environment in which application stacks are instantiated, wherein the infrastructure as code file is generated based at least partly on the environment template. 3. The system of claim 1 , wherein the infrastructure provisioning system is further configured to: obtain an updated infrastructure template bundle from the administrator account, wherein the updated infrastructure template bundle comprises a second schema and a second infrastructure as code template; determine a difference between the updated infrastructure template bundle and the infrastructure template bundle; and based at least in part on determining the difference, deploy a second instance of the application stack using the updated infrastructure template bundle and at least one of the specification file or a second specification file. 4. The system of claim 3 , wherein the infrastructure provisioning system is further configured to: determine that the difference between the updated infrastructure template bundle and the infrastructure template bundle requires updated developer input; and obtain the second specification file from the developer account. 5. A computer-implemented method comprising: under control of a computing system comprising one or more processors configured to execute specific instructions, obtaining a template from a first computing device, wherein the template defines a plurality of infrastructure resources for computing services, wherein the template comprises a schema and a translation tool, and wherein the schema identifies one or more fields for defining a computing service based at least in part on the template; obtaining specification data from a second computing device, the specification data associated with a computing service to be generated using the template, wherein the specification data comprises a field value corresponding to a field of the schema; generating infrastructure as code data using the translation tool and the specification data; and deploying an instance of the computing service using the infrastructure as code data. 6. The computer-implemented method of claim 5 , further comprising extracting the translation tool from the template, wherein the translation tool comprises an infrastructure as code file with one or more translation instructions, and wherein a translation instruction specifies an operation for including a portion of the schema into the infrastructure as code data. 7. The computer-implemented method of claim 5 , further comprising: receiving an updated template, wherein the updated template comprises a second schema and a second translation tool, and wherein at least a portion of the updated template is different than the template; and generating updated infrastructure as code data using the second translation tool. 8. The computer-implemented method of claim 7 , further comprising determining a version of the updated template, wherein the version comprises one of: a minor version, wherein generating the updated infrastructure as code data using the second translation tool is based on the specification data; or a major version, wherein generating the updated infrastructure as code data using the second translation tool is based on updated specification data obtained from a developer computing device. 9. The computer-implemented method of claim 7 , wherein generating the updated infrastructure as code data using the second translation tool is performed using the specification data, without requiring updated specification data. 10. The computer-implemented method of claim 5 , further comprising: determining one or more monitoring resources, wherein the one or more monitoring resources comprise an observability tool or a shared resource; monitoring, by the one or more monitoring resources, a health of one or more infrastructure resources of the plurality of infrastructure resources; and based at least in part on monitoring the health of the one or more infrastructure resources, providing an alert indicating a status of the one or more infrastructure resources. 11. The computer-implemented method of claim 5 , further comprising: monitoring deployment of the instance of the computing service, wherein the deployment of the instance of the computing service is a rolling deployment; determining that an alarm is triggered by the deployment of the instance of the computing service; and based at least in part on determining that the alarm is triggered, reversing the deployment of the instance of the computing service. 12. The computer-implemented method of claim 5 , further comprising providing, to at least one of the first computing device or the second computing device, a health indication of the instance of the computing service, wherein the health indication comprises: a deployment status of the instance of the computing service; an upgrade status of the instance of the computing service; or a health status of the instance of the computing service. 13. The computer-implemented method of claim 5 , further comprising: registering the template as available for deployment; receiving, from a developer computing device, a request to deploy a plurality of instances of the computing service; and deploying the plurality of instances of the computing service using the infrastructure as c

Assignees

Inventors

Classifications

  • for performance assessment · CPC title

  • Monitoring of software · CPC title

  • G06F8/60Primary

    Software deployment · CPC title

  • G06F8/311Primary

    Functional or applicative languages; Rewrite languages · CPC title

  • Interprogram communication · 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 US11429353B1 cover?
Features are disclosed for dynamically provisioning an application stack using a set of infrastructure resources. A computing device can receive an infrastructure template from an administrative device. Based on the infrastructure template, the computing device can determine a schema and an infrastructure as code. Using the schema, the computing device can receive a specification file from a de…
Who is the assignee on this patent?
Amazon Tech 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 Aug 30 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).