IP Library Granted Patent US 8,935,570
Granted Patent B2
US 8,935,570 · App. 13/551,848 · Granted Jan 13, 2015

Automating infrastructure workflows as atomic transactions

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 8,935,570
App. No.
13/551,848
Granted
Jan 13, 2015
Kind
B2
Abstract

Information Technology (IT) system configuration is managed using a set of defined flows with atomic execution properties. The instructions to execute a change to one or more infrastructure elements (a “forward transaction”) are maintained with instructions and/or information needed to execute a corresponding “reverse” transaction that is responsible for returning the element(s) to a pre-transaction action state in the event of a configuration failure or other request originating at a high level flow.

Claims (34)

1. A method for enabling an automated flow for specifying a data processing service as one or more atomic transactions, the method comprising:

receiving a request for a new configuration of an element or a change in configuration of an element;

based on the request, forming a flow including at least one forward transaction to satisfy the request;

collecting and storing current configuration of the element for the purpose of reverting to the original state; and

in response to receiving an error condition during execution of a forward transactions of the flow, executing at least one reverse transaction corresponding to the forward transaction of the flow that caused the error condition;

wherein the at least one forward and reverse transaction each includes programmatic instructions for provisioning or deprovisioning at least one device or resource in a network of devices or resources.

2. The method of claim 1 wherein the request includes at least one of the following: a request to provision a device in a network of devices, request to create an infrastructure element of a virtual data center (VDC), a request to create a virtual local area network (VLAN), a request to logically configure a network service component, and a request to configure an element of a VDC.

3. The method of claim 1 wherein at least one device or resource is a physical device or resource.

4. The method of claim 1 wherein at least one device or resource is a virtual device or resource.

5. The method of claim 1 wherein at least one programmatic instruction is a logical configuration of either a virtual or physical device.

6. The method of claim 1 wherein executing at least one forward transaction of the flow further comprises provisioning a new device or resource in a network of devices and resources.

7. The method of claim 1 wherein executing the at least one forward transaction of the flow further executes a sequence of programmatic steps that cause a change in state of an existing device or resource in a network of devices or resources.

8. The method of claim 1 further comprising mapping at least one forward transaction to a corresponding reverse transaction.

9. The method of claim 1 wherein executing the at least one reverse transaction rolls back any configuration changes caused by the execution of the corresponding forward transaction.

10. The method of claim 1 wherein the error condition includes at least one of the following: an error that causes provisioning of at least one device or resource to fail, a VLAN identification error, security zone identification error in a firewall, resource allocation error, a VDC provisioning error.

11. The method of claim 1 further comprising:

in response to receiving the request, identifying a service or a change in a service requested;

based on the identified service or change in service requested, identifying a set of devices and resources required to satisfy the request;

based on the identified devices and resources, organizing a set of forward and reverse transactions into a hierarchical flow.

12. The method of claim 11 wherein the set of forward transactions and corresponding reverse transactions are indexed and stored in a data store.

13. A system for managing data processing system elements comprising:

a persistent storage device for storing executable instructions that represent:

a do method including programmatic instructions that when executed implement a new configuration of a data processing element or changes to a configuration of a data processing system element;

a current state method including instructions for collecting and storing current configuration of the element;

an undo method including programmatic instructions that when executed return the configuration of the data processing system element to an original state; and

a processor for

upon request from a higher level flow, executing the do method as a forward transaction,

upon detection of an error resulting from execution of the do method executing the undo method as a reverse transaction, and

optionally executing the current state method as needed, to ensure atomicity; and

wherein the do method and undo method comprise at least one transaction for provisioning and deprovisioning at least one device or resource in a network of devices or resources.

14. The system of claim 13 wherein the request includes at least one of the following: a request to provision a device in a network of devices, request to create an infrastructure element of a virtual data center (VDC), a request to create a virtual local area network (VLAN), a request to logically configure a network service component, and a request to configure any element of a VDC.

15. The system of claim 13 wherein at least one device or resource is a virtual device or resource.

16. The system of claim 13 wherein the persistent storage device further stores a mapping of the do method to the corresponding undo method enabling programming execution of a sequence of that, after execution of the undo method, return at least one device or resource to a state that existing prior to execution of the do method.

17. The system of claim 13 , wherein the undo method is executed upon at least one of the following occurring during execution of the do method: an error that causes provisioning of at least one device or resource to fail, a VLAN identification error, security zone identification error in a firewall, resource allocation error, a VDC provisioning error.

Assignments (12)
RELEASE OF SECURITY INTEREST Recorded Sep 20, 2023
From: PNC BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: SUNGARD AVAILABILITY SERVICES, LP; SUNGARD AS NEW HOLDINGS III, LLC; SUNGARD AS NEW HOLDINGS II, LLC
Reel/Frame 064963/0677 →
RELEASE OF SECURITY INTEREST Recorded Jan 23, 2023
From: CORTLAND PRODUCTS CORP.
To: SUNGARD AVAILABILITY SERVICES, LP
Reel/Frame 062451/0445 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 22, 2022
From: SUNGARD AVAILABILITY SERVICES, L.P.
To: 11:11 SYSTEMS, INC.
Reel/Frame 061853/0933 →
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Nov 11, 2022
From: PNC BANK, NATIONAL ASSOCIATION
To: SUNGARD AS NEW HOLDINGS III, LLC; SUNGARD AS NEW HOLDINGS II, LLC; SUNGARD AVAILABILITY SERVICES, LP
Reel/Frame 061925/0294 →
RELEASE OF INTELLECTUAL PROPERTY SECURITY INTEREST Recorded Jun 21, 2021
From: ALTER DOMUS PRODUCTS CORP.
To: SUNGARD AVAILABILITY SERVICES, LP
Reel/Frame 056634/0200 →
INTELLECTUAL PROPERTY SECURITY INTEREST AGREEMENT Recorded Dec 23, 2020
From: SUNGARD AS NEW HOLDINGS II, LLC; SUNGARD AS NEW HOLDINGS III, LLC; SUNGARD AVAILABILITY SERVICES, LP
To: ALTER DOMUS PRODUCTS CORP.
Reel/Frame 054837/0948 →
INTELLECTUAL PROPERTY SECURITY INTEREST AGREEMENT Recorded Dec 23, 2020
From: SUNGARD AS NEW HOLDINGS II, LLC; SUNGARD AS NEW HOLDINGS III, LLC; SUNGARD AVAILABILITY SERVICES, LP
To: ALTER DOMUS PRODUCTS CORP.
Reel/Frame 054838/0052 →
SECURITY AGREEMENT Recorded Aug 12, 2019
From: SUNGARD AVAILABILITY SERVICES, LP; SUNGARD AS NEW HOLDINGS III, LLC; SUNGARD AS NEW HOLDINGS II, LLC
To: PNC BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 050020/0785 →
RELEASE OF SECURITY INTEREST Recorded May 6, 2019
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: SUNGARD AVAILABILITY SERVICES, LP
Reel/Frame 049092/0264 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2019
From: CHILDERS, JERRY W., JR.; SEARS, CHRISTOPHER T.; SUBRAHMANIAN, RAJAGOPALAN
To: SUNGARD AVAILABILITY SERVICES, LP
Reel/Frame 048003/0182 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 3, 2014
From: CHILDERS, JERRY W., JR.; SUBRAHMANIAN, RAJAGOPALAN
To: SUNGARD AVAILABILITY SERVICES, LP
Reel/Frame 034361/0072 →
SECURITY INTEREST Recorded Apr 11, 2014
From: SUNGARD AVAILABILITY SERVICES, LP
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 032652/0864 →