Multi-cloud provisioning architecture with template aggregation
First Claim
Patent Images
1. A system comprising:
- template dispatcher circuitry;
job preparation circuitry in communication with the template dispatcher circuitry, the job preparation circuitry configured to;
receive a provisioning request message for a system deployment from the template dispatcher circuitry, the system deployment including aggregated deployment of multiple virtual machines;
obtain a template identifier from the provisioning request message;
obtain a provisioning template specified by the template identifier for implementing the system deployment, the provisioning template providing a single resource provisioning task for the aggregate deployment of the multiple virtual machines; and
disaggregate individual ones of the multiple virtual machines in the provisioning template into separately queueable resource provisioning tasks for corresponding disaggregated individual ones of the multiple virtual machines; and
resource correlation circuitry in communication with the job preparation circuitry, the resource correlation circuitry configured to;
determine, based on one or more characteristics of individual ones of the multiple virtual machines and using a pre-defined correlation test, correlated virtual machines among the disaggregated individual ones of the multiple virtual machines;
re-aggregate the correlated virtual machines into a common resource provisioning template block for provisioning the correlated virtual machines together on a cloud queue as a single queued item; and
submit the common resource provisioning template block to provisioning workflow circuitry that handles provisioning of the correlated virtual machines.
1 Assignment
0 Petitions
Accused Products
Abstract
Provisioning resources into the cloud is a constantly increasing technical challenge as more cloud service providers emerge, each offering disparate computing platforms, services, assets, supported technical components, and other features. A cloud computing provisioning architecture implements a sequence of complex technical analyses that successfully provisions complex cloud computing services. The provisioning architecture disaggregates resources into individual provisioning actions, and also selectively re-aggregates the resources into template blocks which a service provider accepts for native provisioning.
128 Citations
20 Claims
-
1. A system comprising:
-
template dispatcher circuitry; job preparation circuitry in communication with the template dispatcher circuitry, the job preparation circuitry configured to; receive a provisioning request message for a system deployment from the template dispatcher circuitry, the system deployment including aggregated deployment of multiple virtual machines; obtain a template identifier from the provisioning request message; obtain a provisioning template specified by the template identifier for implementing the system deployment, the provisioning template providing a single resource provisioning task for the aggregate deployment of the multiple virtual machines; and disaggregate individual ones of the multiple virtual machines in the provisioning template into separately queueable resource provisioning tasks for corresponding disaggregated individual ones of the multiple virtual machines; and resource correlation circuitry in communication with the job preparation circuitry, the resource correlation circuitry configured to; determine, based on one or more characteristics of individual ones of the multiple virtual machines and using a pre-defined correlation test, correlated virtual machines among the disaggregated individual ones of the multiple virtual machines; re-aggregate the correlated virtual machines into a common resource provisioning template block for provisioning the correlated virtual machines together on a cloud queue as a single queued item; and submit the common resource provisioning template block to provisioning workflow circuitry that handles provisioning of the correlated virtual machines. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system comprising:
-
template dispatcher circuitry configured to; prepare a provisioning request message comprising a template identifier of a provisioning template specifying implementation of a first virtual machine aggregated with implementation of a second virtual machine; and submit the provisioning request message to initiate provisioning of the first virtual machine and second virtual machine; job preparation circuitry in communication with the template dispatcher circuitry, the job preparation circuitry configured to; receive the provisioning request message from the template dispatcher circuitry; obtain the template identifier from the provisioning request message; retrieve the provisioning template specified by the template identifier, the provisioning template specifying implementation for both the first virtual machine and the second virtual machine, the provisioning template providing a single resource provisioning task for aggregated deployment of the first and second virtual machines; and disaggregate the first virtual machine from the second virtual machine, by preparing separately queueable resource provisioning tasks for the first virtual machine and the second virtual machine; and resource correlation circuitry in communication with the job preparation circuitry, the resource correlation circuitry configured to; query a resource service on the first virtual machine and obtain a first service provider region identifier and a first aggregation indicator; query the resource service on the second virtual machine and obtain a second service provider region identifier and a second aggregation indicator; determine that the first service provider region identifier and the second service provider region identifier both identify a common service provider region; determine that the first aggregation indicator is True; determine that the second aggregation indicator is True; responsive to the first and second aggregation flags being determined to be True, determine that aggregation is allowed; after determining aggregation is allowed, re-aggregate the first virtual machine and the second virtual machine into a common resource provisioning template block for provisioning the first and second virtual machines together on a cloud queue as a single queued item; and submit the common resource provisioning template block to provisioning workflow circuitry tasked with facilitating provisioning of the correlated first and second virtual machines. - View Dependent Claims (11)
-
-
12. A method comprising:
-
in a multi-cloud provisioning machine; with job preparation circuitry; receiving a provisioning request message for a system deployment from template dispatcher circuitry, the system deployment including aggregated deployment of multiple virtual machines; obtaining a template identifier from the provisioning request message; obtaining a provisioning template specified by the template identifier for implementing the system deployment, the provisioning template providing a single resource provisioning task for the aggregate deployment of the multiple virtual machines; and disaggregating individual ones of the multiple virtual machines in the provisioning template into separately queueable resource provisioning tasks for corresponding disaggregated the individual ones of the multiple virtual machines; and with resource correlation circuitry; determining, based on one or more characteristics of individual ones of the multiple virtual machines and using a pre-defined correlation test, correlated virtual machines among the disaggregated individual ones of the multiple virtual machines; re-aggregating the correlated virtual machines into a common resource provisioning template block for provisioning the correlated virtual machines together on a cloud queue as a single queued item; and submitting the common resource provisioning template block to provisioning workflow circuitry for carrying out provisioning of the correlated resources. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20)
-
Specification