IP Library Granted Patent US 11,687,536
Granted Patent B2
US 11,687,536 · App. 17/070,288 · Granted Jun 27, 2023

Pipeline-based system for configuration checking and reporting associated with an information processing system

Inventors: Anurag Sharma (Cedar Park, TX); Sujayendra Thammaiah (Ashland, MA); Christopher Trudel (Georgetown, TX); John Moran (Mebane, NC); Ramesh Ramanathan (Plano, TX); Ranjini Gogga (Bangalore, IN); Sunil Bhaskarnaidu (Bangalore, IN)
Assignee: EMC IP Holding Company LLC
G06F16/24575G06F9/382G06F9/44505G06F9/5027G06F16/24573
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 11,687,536
App. No.
17/070,288
Granted
Jun 27, 2023
Kind
B2
Abstract

Pipeline-based techniques for system configuration management are provided. For example, a method comprises, in a pipeline-based system comprising a set of one or more pipelines, for a given one of the set of one or more pipelines, collecting a set of one or more configuration datasets respectively associated with a set of one or more elements of an information processing system, wherein each of the configuration datasets of the collected set of one or more configuration datasets is specific to the respective element of the information processing system from which it is collected; executing a set of one or more configuration checks on the set of one or more configuration datasets; receiving a set of one or more output results from the executed one or more configuration checks; and generating at least one report from the one or more output results.

Claims (55)

1. An apparatus comprising:

at least one processing device comprising a processor coupled to a memory;

the at least one processing device, when executing program code, implements a pipeline-based system comprising a set of one or more pipelines, wherein a given one of the set of one or more pipelines is configured to implement operatively-coupled components comprising:

a set of one or more data collector components configured to collect a set of one or more configuration datasets respectively associated with a set of one or more elements of an information processing system being configuration-checked, wherein each of the configuration datasets of the collected set of one or more configuration datasets is specific to the respective element of the information processing system from which it is collected;

a set of one or more checker components configured to respectively execute a set of one or more configuration checks on the set of one or more configuration datasets;

a set of one or more filter components configured to respectively select one or more portions of the one or more configuration datasets such that the set of one or more checker components execute the set of one or more configuration checks on the selected one or more portions; and

a reporter configured to receive a set of one or more output results from the set of one or more checker components and to generate at least one report; and

wherein the set of one or more checker components is further configured to check grammar associated with one or more definitions of the given one of the set of one or more pipelines, wherein the checking comprises:

determining whether there are one or more syntax errors in one or more scripts corresponding to the one or more definitions; and

identifying, in response to determining the one or more syntax errors, one or more locations in the one or more scripts corresponding to the one or more of the syntax errors.

2. The apparatus of claim 1 , further comprising a set of one or more formatter components configured to respectively transform the set of one or more configuration datasets into a set of one or more structured configuration datasets.

3. The apparatus of claim 1 , further comprising an aggregator component configured to aggregate at least a portion of the set of one or more configuration datasets.

4. The apparatus of claim 1 , further comprising a gateway component for providing at least a portion of the at least one report to a cloud platform for analysis.

5. The apparatus of claim 1 , further comprising a database adapter component for providing at least a portion of the at least one report to a database for storage.

6. The apparatus of claim 1 , wherein a given one of the operatively coupled components is configured to save an output in a context variable, wherein the context variable enables referencing of the output by another given one of the operatively coupled components as an input.

7. The apparatus of claim 1 , wherein an output of the given one of the set of one or more pipelines serves as an input to at least another given one of the set of one or more pipelines.

8. The apparatus of claim 1 , wherein the set of one or more elements of the information processing system being configuration-checked comprise at least one of a compute resource, a storage resource, and a networking resource deployed in the information processing system.

9. A method comprising:

in a pipeline-based system comprising a set of one or more pipelines, for a given one of the set of one or more pipelines:

collecting a set of one or more configuration datasets respectively associated with a set of one or more elements of an information processing system, wherein each of the configuration datasets of the collected set of one or more configuration datasets is specific to the respective element of the information processing system from which it is collected;

executing a set of one or more configuration checks on the set of one or more configuration datasets;

selecting one or more portions of the one or more configuration datasets and executing the set of one or more configuration checks on the selected one or more portions;

receiving a set of one or more output results from the executed set of one or more configuration checks;

generating at least one report from the one or more output results; and

checking grammar associated with one or more definitions of the given one of the set of one or more pipelines, wherein the checking comprises;

determining whether there are one or more syntax errors in one or more scripts corresponding to the one or more definitions; and

identifying, in response to determining the one or more syntax errors, one or more locations in the one or more scripts corresponding to the one or more of the syntax errors;

wherein the steps are performed by at least one processing device comprising a processor coupled to a memory when executing program code.

10. The method of claim 9 , further comprising transforming the set of one or more configuration datasets into a set of one or more structured configuration datasets.

11. The method of claim 9 , further comprising aggregating at least a portion of the set of one or more configuration datasets.

12. The method of claim 9 , further comprising providing at least a portion of the at least one report to a cloud platform for analysis.

13. The method of claim 9 , further comprising providing at least a portion of the at least one report to a database for storage.

14. A computer program product comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by the at least one processing device causes the at least one processing device to perform the steps of claim 9 .

15. A method comprising:

in a pipeline-based system comprising a set of one or more pipelines configured to collect a set of one or more configuration datasets respectively associated with a set of one or more elements of an information processing system and to configuration-check the set of one or more elements:

parsing a given one of the pipelines;

checking grammar associated with a definition of the given one of the pipelines, wherein the checking comprises:

determining whether there are one or more syntax errors in one or more scripts corresponding to the definition; and

identifying, in response to determining the one or more syntax errors, one or more locations in the one or more scripts corresponding to the one or more of the syntax errors;

maintaining a map of one or more context variables and output data of the given one of the pipelines; and

separating the given one of the pipelines into an ordered array of components to:

execute a set of one or more configuration checks on the set of one or more configuration datasets;

select one or more portions of the one or more configuration datasets and execute the set of one or more configuration checks on the selected one or more portions;

obtain a set of one or more output results; and

generate at least one report;

wherein the steps are performed by at least one processing device comprising a processor coupled to a memory when executing program code.

16. The method of claim 15 , further comprising, for a given component:

parsing one or more user-defined context variables;

reading one or more inputs from the map;

executing the given component as a process based on the one or more inputs; and

storing output results of the component execution into the map.

17. The method of claim 16 , further comprising generating a report based on at least a portion of the output results.

18. The method of claim 17 , further comprising providing the report to one or more of a cloud platform for analysis and a database for storage.

19. The method of claim 9 , wherein an output of the given one of the set of one or more pipelines serves as an input to at least another given one of the set of one or more pipelines.

20. The method of claim 9 , wherein the set of one or more elements of the information processing system comprise at least one of a compute resource, a storage resource, and a networking resource deployed in the information processing system.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0523) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 060332/0664 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0434) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 060332/0740 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0609) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0570 →
RELEASE OF SECURITY INTEREST AT REEL 054591 FRAME 0471 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0463 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 054475/0609 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 054475/0434 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 054475/0523 →
SECURITY AGREEMENT Recorded Nov 13, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 054591/0471 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 14, 2020
From: SHARMA, ANURAG; THAMMAIAH, SUJAYENDRA; TRUDEL, CHRISTOPHER; MORAN, JOHN; RAMANATHAN, RAMESH; GOGGA, RANJINI; BHASKARNAIDU, SUNIL
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 054052/0442 →