IP Library Granted Patent US 10,095,539
Granted Patent B2
US 10,095,539 · App. 15/218,615 · Granted Oct 9, 2018

Automated data structure-driven orchestration of complex server provisioning tasks

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,095,539
App. No.
15/218,615
Granted
Oct 9, 2018
Kind
B2
Abstract

A method and associated systems for automated orchestration of complex server provisioning tasks, An orchestration-optimization system receives input that identifies a destination, platform, and pattern of tasks that together characterize a procedure for building a particular virtualized computer environment. The system selects a set of generic orchestration methods that identify in general terms each task required to build the environment. The system then embeds into the orchestration methods all currently known contextual data associated with the specified build procedure, converting the generic methods into a build-specific runlist of tasks. When the environment is ready to be built, additional environment-specific data that becomes known only at build time is inserted into placeholders previously embedded into the runlist tasks. The system then performs the sequence of runlist tasks in order to automatically build the virtualized system.

Claims (61)

1. A cloud-orchestration optimization system comprising a processor, a memory coupled to the processor, and a computer-readable hardware storage device coupled to the processor, the computer-readable hardware storage device containing program code that, when run by the processor via the memory, implements a method for automated orchestration of complex server provisioning tasks, the method comprising:

the cloud-orchestration optimization system receiving input data that describes characteristics of a virtualized computing environment to be built;

the cloud-orchestration optimization system selecting a pattern as a function of the receiving, where the pattern specifies a set of generic tasks that must be performed in order to build the virtualized environment;

the cloud-orchestration optimization system identifying a set of orchestration methods that each identify a generic method of performing a task of the set of generic tasks;

the cloud-orchestration optimization system populating an attribute set data structure, where the attribute set comprises data elements required by the set of orchestration methods;

the cloud-orchestration optimization system embedding one or more data elements of the attribute set into the set of orchestration methods in order to instantiate each orchestration method of the set of orchestration methods as a runlist task,

where the instantiating a first orchestration method of the set of orchestration methods comprises embedding a placeholder variable into the first orchestration method,

where the placeholder variable identifies a first data element of the attribute set, and

where a value of the first data element becomes known only when the virtualized environment is being built;

the cloud-orchestration optimization system compiling the runlist tasks into an orchestration runlist, where the runlist comprises instructions for building the virtualized environment, and where the runlist performs the runlist tasks in an order determined as a function of the pattern; and

the cloud-orchestration optimization system assigning a value to the placeholder variable when the virtualized environment is being built.

2. The cloud-orchestration optimization system of claim 1 , where the received input comprises information that directly or indirectly identifies the pattern, a platform upon which to build the virtualized environment, and a destination at which to build the virtualized environment.

3. The cloud-orchestration optimization system of claim 2 , where the destination identifies information selected from the group consisting of: a data center within which the virtualized environment will be deployed; a server cluster upon which the virtualized environment will be deployed; a type of business function that the virtualized environment will serve; and a class of management services that will manage the virtualized environment.

4. The cloud-orchestration optimization system of claim 1 , where an orchestration method of the set of orchestration methods is stored in a format compliant with an implementation-framework convention selected from the group consisting of: REXEC (Remote Exec), Windows SSH (Secure Shell), REST (Representational State Transfer), SOAP (Simple Object Access Protocol), a Windows API (Application Programming Interface), and NIX package manager.

5. The cloud-orchestration optimization system of claim 4 , where the attribute set stores a pattern attribute, a local system attribute, an authentication alias, and an endpoint alias,

where the pattern attribute represents a characteristic of the pattern,

where the local system attribute represents a characteristic of an infrastructure component of the virtualized environment,

where the authentication alias represents security credentials that must be presented by the cloud-orchestration optimization system in order to perform a runlist task, and

where the endpoint alias represents a characteristic of an infrastructure component of the computing environment within which the virtualized environment will be deployed.

6. The cloud-orchestration optimization system of claim 1 , where an orchestration method of the set of orchestration methods identifies a distinct computer file that stores instructions for performing steps of at least one orchestration method of the set of orchestration methods.

7. A method for automated orchestration of complex server provisioning tasks, the method comprising:

a cloud-orchestration optimization system, comprising a processor, a memory coupled to the processor, and a computer-readable hardware storage device coupled to the processor, receiving input data that describes characteristics of a virtualized computing environment to be built;

the cloud-orchestration optimization system selecting a pattern as a function of the receiving, where the pattern specifies a set of generic tasks that must be performed in order to build the virtualized environment;

the cloud-orchestration optimization system identifying a set of orchestration methods that each identify a generic method of performing a task of the set of generic tasks;

the cloud-orchestration optimization system populating an attribute set data structure, where the attribute set comprises data elements required by the set of orchestration methods;

the cloud-orchestration optimization system embedding one or more data elements of the attribute set into the set of orchestration methods in order to instantiate each orchestration method of the set of orchestration methods as a runlist task,

where the instantiating a first orchestration method of the set of orchestration methods comprises embedding a placeholder variable into the first orchestration method,

where the placeholder variable identifies a first data element of the attribute set, and

where a value of the first data element becomes known only when the virtualized environment is being built;

the cloud-orchestration optimization system compiling the runlist tasks into an orchestration runlist, where the runlist comprises instructions for building the virtualized environment, and where the runlist performs the runlist tasks in an order determined as a function of the pattern; and

the cloud-orchestration optimization system assigning a value to the placeholder variable when the virtualized environment is being built.

8. The method of claim 7 , where the received input comprises information that directly or indirectly identifies the pattern, a platform upon which to build the virtualized environment, and a destination at which to build the virtualized environment, and

where the destination identifies information selected from the group consisting of: a data center within which the virtualized environment will be deployed; a server cluster upon which the virtualized environment will be deployed; a type of business function that the virtualized environment will serve; and a class of management services that will manage the virtualized environment.

9. The method of claim 7 , where an orchestration method of the set of orchestration methods is stored in a format compliant with an implementation-framework convention selected from the group consisting of: REXEC (Remote Exec), Windows SSH (Secure Shell), REST (Representational State Transfer), SOAP (Simple Object Access Protocol), a Windows API (Application Programming Interface), and NIX package manager.

10. The method of claim 9 , where the attribute set stores a pattern attribute, a local system attribute, an authentication alias, and an endpoint alias,

where the pattern attribute represents a characteristic of the pattern,

where the local system attribute represents a characteristic of an infrastructure component of the virtualized environment,

where the authentication alias represents security credentials that must be presented by the cloud-orchestration optimization system in order to perform a runlist task, and

where the endpoint alias represents a characteristic of an infrastructure component of the computing environment within which the virtualized environment will be deployed.

11. The method of claim 7 , where an orchestration method of the set of orchestration methods identifies a distinct computer file that stores instructions for performing steps of at least one orchestration method of the set of orchestration methods.

12. The method of claim 7 , further comprising providing at least one support service for at least one of creating, integrating, hosting, maintaining, and deploying computer-readable program code in the cloud-orchestration optimization system, where the computer-readable program code in combination with the cloud-orchestration optimization system is configured to implement the receiving, the selecting, the identifying, the populating, the embedding and the compiling.

13. A computer program product, comprising a computer-readable hardware storage device having a computer-readable program code stored therein, the program code configured to be executed by a cloud-orchestration optimization system comprising a processor, a memory coupled to the processor, and a computer-readable hardware storage device coupled to the processor, the computer-readable hardware storage device containing program code that, when run by the processor via the memory, implements a method for automated orchestration of complex server provisioning tasks, the method comprising:

the cloud-orchestration optimization system receiving input data that describes characteristics of a virtualized computing environment to be built;

the cloud-orchestration optimization system selecting a pattern as a function of the receiving, where the pattern specifies a set of generic tasks that must be performed in order to build the virtualized environment;

the cloud-orchestration optimization system identifying a set of orchestration methods that each identify a generic method of performing a task of the set of generic tasks;

the cloud-orchestration optimization system populating an attribute set data structure, where the attribute set comprises data elements required by the set of orchestration methods;

the cloud-orchestration optimization system embedding one or more data elements of the attribute set into the set of orchestration methods in order to instantiate each orchestration method of the set of orchestration methods as a runlist task,

where the instantiating a first orchestration method of the set of orchestration methods comprises embedding a placeholder variable into the first orchestration method,

where the placeholder variable identifies a first data element of the attribute set, and

where a value of the first data element becomes known only when the virtualized environment is being built;

the cloud-orchestration optimization system compiling the runlist tasks into an orchestration runlist, where the runlist comprises instructions for building the virtualized environment, and where the runlist performs the runlist tasks in an order determined as a function of the pattern; and

the cloud-orchestration optimization system assigning a value to the placeholder variable when the virtualized environment is being built.

14. The computer program product of claim 13 , where the received input comprises information that directly or indirectly identifies the pattern, a platform upon which to build the virtualized environment, and a destination at which to build the virtualized environment, and

where the destination identifies information selected from the group consisting of: a data center within which the virtualized environment will be deployed; a server cluster upon which the virtualized environment will be deployed; a type of business function that the virtualized environment will serve; and a class of management services that will manage the virtualized environment.

15. The computer program product of claim 13 , where an orchestration method of the set of orchestration methods is stored in a format compliant with an implementation-framework convention selected from the group consisting of: REXEC (Remote Exec), Windows SSH (Secure Shell), REST (Representational State Transfer), SOAP (Simple Object Access Protocol), a Windows API (Application Programming Interface), and NIX package manager.

16. The computer program product of claim 15 , where the attribute set stores a pattern attribute, a local system attribute, an authentication alias, and an endpoint alias,

where the pattern attribute represents a characteristic of the pattern,

where the local system attribute represents a characteristic of an infrastructure component of the virtualized environment,

where the authentication alias represents security credentials that must be presented by the cloud-orchestration optimization system in order to perform a runlist task, and

where the endpoint alias represents a characteristic of an infrastructure component of the computing environment within which the virtualized environment will be deployed.

17. The computer program product of claim 13 , where an orchestration method of the set of orchestration methods identifies a distinct computer file that stores instructions for performing steps of at least one orchestration method of the set of orchestration methods.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: KYNDRYL, INC.
Reel/Frame 057885/0644 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 25, 2016
From: BARKER, JOSHUA J.; CAYLEY, MARK A.; LYONS, ANDREW P.; WANG, A. CHARLOTTE
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 039246/0717 →