IP Library Granted Patent US 7,996,500
Granted Patent B2
US 7,996,500 · App. 12/634,614 · Granted Aug 9, 2011

Systems and methods for extensible distributed configuration management

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 7,996,500
App. No.
12/634,614
Granted
Aug 9, 2011
Kind
B2
Abstract

Systems and methods for extensible distributed configuration management of computer resources are described. Examples include a computer system including a processing unit and a storage device that stores a model definition and one or more asset plug-ins (each of the one or more asset plug-ins configured to expose at least one asset object that represents a computer resource). The computer system further includes memory that stores an asset model created based at least in part on the model definition, and a network interface configured to deploy to at least one managed system a compatible asset plug-in (the model definition including at least one conditional reference to the compatible asset plug-in). If a condition specified within the asset model is satisfied the processing unit selects the compatible asset plug-in for deployment, the condition being defined within the model definition and designated as applicable to the at least one conditional reference.

Claims (51)

1. A computer system for managing one or more computer resources, comprising:

a processing unit;

a storage device, coupled to the processing unit, that stores at least one model definition and one or more asset plug-ins, each of the one or more asset plug-ins configured to expose at least one asset object that represents a computer resource;

memory, coupled to the processing unit and the storage device, that stores at least one asset model created based at least in part on the at least one model definition; and

a network interface, coupled to the processing unit, the storage device and the memory and configured to deploy to at least one managed system a compatible asset plug-in of the one or more asset plug-ins, the at least one model definition comprising at least one conditional reference to the compatible asset plug-in;

wherein if a condition specified within the at least one asset model is satisfied the processing unit selects the compatible asset plug-in for deployment, the condition being defined within the at least one model definition and designated as applicable to the at least one conditional reference.

2. The computer system of claim 1 , wherein the at least one model definition comprises a conditional asset model definition and a second condition specified within the at least one asset model that is designated as applicable to the conditional asset model definition, and wherein if the second condition is satisfied the processing unit enables the at least one asset object to be presented for access within a user interface of the computer system.

3. The computer system of claim 1 ,

wherein the processing unit creates an asset model element of the at least one asset model based at least in part on a model element definition within the at least one model definition, the asset model element describing an asset object element of the at least one asset object; and

wherein if a second condition specified within the at least one asset model is satisfied the processing unit enables the asset object element to be presented for access within a user interface of the computer system, the second condition being defined within the at least one model definition and designated as applicable to the model element definition used to create the asset model element.

4. The computer system of claim 1 , wherein each of the one or more asset plug-ins comprises one or more functions that implement at least part of a common application program interface (API), and wherein the computer system communicates with a deployed asset plug-in of the one or more asset plug-ins by calling at least one of the one or more functions.

5. The computer system of claim 1 ,

wherein the processing unit creates an asset model action of the at least one asset model based at least in part on a model action definition within the at least one model definition, the asset model action describing an action of the at least one asset object performed by a deployed asset plug-in of the one or more plug-ins; and

wherein if a second condition specified within the at least one asset model is satisfied the processing unit enables the action to be presented as a selectable option within a user interface of the computer system.

6. A method for managing a computer resource, the method comprising:

importing at least one model definition comprising at least one conditional reference to one or more asset plug-ins and further comprising a condition designated as applicable to the at least one conditional reference, a compatible asset plug-in of the one or more asset plug-ins being compatible with a managed system and further being configured to expose at least one asset object representing a computer resource of the managed system;

transforming the at least one model definition into at least one asset model;

deploying the compatible asset plug-in to the managed system if a condition specified within the at least one asset model is satisfied; and

accessing the at least one asset object to perform operations on the computer resource.

7. The method of claim 6 , further comprising enabling the at least one asset object to be presented for access within a user interface of the computer system if a second condition specified within the at least one asset model is satisfied, the at least one model definition comprising a conditional asset model definition and the second condition being designated as applicable to the conditional asset model definition.

8. The method of claim 6 , further comprising

creating an asset model element of the at least one asset model based at least in part on a model element definition within the at least one model definition, the asset model element describing an asset object element of the at least one asset object; and

enabling the asset object element to be presented for access within a user interface of the computer system if a second condition specified within the at least one asset model is satisfied, the second condition being defined within the at least one model definition and designated as applicable to the model element definition used in creating the asset model element.

9. The method of claim 6 , further comprising interacting with the one or more asset plug-ins after being deployed by causing a call to be initiated to at least one of one or more functions that implement at least part of a common application program interface (API), the one or more asset plug-ins comprising the one or more functions.

10. The method of claim 6 , further comprising:

creating an asset model action of the at least one asset model based at least in part on a model action definition within the at least one model definition, the asset model action describing an action of the at least one asset object performed by a deployed asset plug-in of the one or more asset plug-ins; and

enabling the action to be presented as a selectable option within a user interface of the computer system if a second condition specified within the at least one asset model is satisfied.

11. A computer-readable storage medium comprising software that can be executed on a processor to cause the processor to perform the method of claim 6 .

12. A networked computer system comprising a plurality of computers communicatively coupled, at least one of the plurality of computers programmed to perform at least a portion of the method of claim 6 , wherein the entire method for managing resources of claim 6 is performed collectively by the plurality of computers.

13. A networked configuration management system, comprising:

a management station, comprising:

a processing unit;

a storage device, coupled to the processing unit, that stores at least one model definition and one or more asset plug-ins, each of the one or more asset plug-ins configured to expose at least one asset object;

memory, coupled to the processing unit and the storage device, that stores at least one asset model created based at least in part on the at least one model definition; and

a network interface, coupled to the processing unit, the storage device and the memory and configured to deploy to at least one managed system a compatible asset plug-in of the one or more asset plug-ins, the at least one model definition comprising at least one conditional reference to the compatible asset plug-in;

one or more managed systems, including the at least one managed system, that each comprises a computer resource represented by one of the at least one asset objects; and

a communication network that couples the management station to the one or more managed systems;

wherein if a condition specified within the at least one asset model is satisfied the processing unit causes the compatible asset plug-in to be deployed to the at least one managed system, the condition being defined within the at least one model definition and designated as applicable to the at least one conditional reference.

14. The networked computer system of claim 13 , wherein the at least one model definition comprises a conditional asset model definition and a second condition specified within the at least one asset model that is designated as applicable to the conditional asset model definition, and wherein if the second condition is satisfied the processing unit enables the at least one asset object to be presented for access within a user interface of the computer system.

15. The networked computer system of claim 13 ,

wherein the processing unit creates an asset model element of the at least one asset model based at least in part on a model element definition within the at least one model definition, the asset model element describing an asset object element of the at least one asset object; and

wherein if a second condition specified within the at least one asset model is satisfied the processing unit enables the asset object element to be presented for access within a user interface of the computer system, the second condition being defined within the at least one model definition and designated as applicable to the model element definition used to create the asset model element.

16. The networked computer system of claim 13 , wherein each of the one or more asset plug-ins comprises one or more functions that implement at least part of a common application program interface (API), and wherein the computer system communicates with a deployed asset plug-in of the one or more asset plug-ins by calling at least one of the one or more functions.

17. The networked computer system of claim 16 , the at least one managed systems further comprising:

a second processing unit;

a second network interface, coupled to the second processing unit, that receives the compatible asset plug-in from the management station; and

a second storage device, coupled to the second processing unit and the second network interface, that stores the received compatible asset plug-in;

wherein the second processing unit registers the received compatible asset plug-in with an operating system executing on the at least one managed systems and causes the received compatible asset plug-in to respond to calls to the one or more functions.

18. The networked computer system of claim 13 ,

wherein the processing unit creates an asset model action of the at least one asset model based at least in part on a model action definition within the at least one model definition, the asset model action describing an action of the at least one asset object performed by a deployed asset plug-in of the one or more plug-ins; and

wherein if a second condition specified within the at least one asset model is satisfied the processing unit enables the action to be presented as a selectable option within a user interface of the computer system.

Assignments (14)
CHANGE OF NAME Recorded Jan 10, 2025
From: BLADELOGIC, INC.
To: BMC HELIX, INC.
Reel/Frame 069870/0796 →
GRANT OF FIRST LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0628 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0568 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052854/0139) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0617 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052844/0646) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0408 →
OMNIBUS ASSIGNMENT OF SECURITY INTERESTS IN PATENT COLLATERAL Recorded Mar 4, 2024
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS RESIGNING COLLATERAL AGENT
To: GOLDMAN SACHS BANK USA, AS SUCCESSOR COLLATERAL AGENT
Reel/Frame 066729/0889 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 1, 2024
From: ALTER DOMUS (US) LLC
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 066567/0283 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Sep 30, 2021
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 057683/0582 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052844/0646 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052854/0139 →
RELEASE OF PATENTS Recorded Oct 5, 2018
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.; BMC ACQUISITION L.L.C.
Reel/Frame 047198/0468 →
SECURITY INTEREST Recorded Oct 2, 2018
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE, AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 047185/0744 →
SECURITY AGREEMENT Recorded Sep 11, 2013
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 031204/0225 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2009
From: KOBI, HAYIM; WHITNEY, JON
To: BLADELOGIC, INC.
Reel/Frame 023631/0523 →