Claims
- 1. A method for configuring a plurality of heterogeneous servers across a network, the method comprising:
(a) browsing server objects in each of a plurality of servers across a network; (b) selecting identifiers of at least one browsed server objects to create a template; (c) selecting a gold server from the plurality of servers; (d) recording values of the server object identifiers selected in a template from the gold server to create a reference model; (e) comparing a second server from the plurality of servers to the reference model; and (f) correcting discrepancies of the second server against the reference model.
- 2. The method of claim 1, wherein the server objects in the browsing step (a) comprise at least one of files and configuration file entries.
- 3. The method of claim 2, wherein the server objects in the browsing step (a) comprise at least one of a primitive server object, a compound server object, an abstract configuration server object, and a component server objects.
- 4. The method of claim 3, wherein the primitive server object comprises an elemental server object.
- 5. The method of claim 3, wherein the compound server object comprises at least one of the primitive server objects, the abstract configuration server objects, the component server objects and the compound server objects.
- 6. The method of claim 3, wherein the abstract configuration server object comprises an entry in a configuration file mapped to a corresponding entry in a common abstract configuration file format.
- 7. The method of claim 3, wherein the component server object comprises a sequenced collection of server objects.
- 8. The method of claim 1, wherein the selecting step (b), the template comprises a manually created template.
- 9. The method of claim 1, wherein the selecting step (b), the template comprises an externally imported template.
- 10. The method of claim 1, wherein the selecting step (b), the template comprises at least one of previously defined templates.
- 11. The method of claim 1, wherein the recording step (d), the reference model comprises a manually created template.
- 12. The method of claim 1, wherein the recording step (d), the reference model comprises at least one of previously defined reference models.
- 13. The method of claim 1, wherein the recording step (d) comprises arbitrarily taking a snapshot of the current configuration of a first server.
- 14. The method of claim 13, wherein the comparing step (e) comprises comparing a live-version of the first server to the snapshot.
- 15. The method of claim 13, wherein the correcting step (f) further comprises restoring a previous configuration of the first server from a snapshot.
- 16. The method of claim 1, wherein the recording step (d) comprises recurrently taking a plurality of snapshots of a first server at predetermined time intervals, wherein a first snapshot from the plurality of snapshots forms a baseline for subsequent snapshots from the plurality of snapshots and the subsequent snapshots capture changes against the baseline over time.
- 17. The method of claim 16, wherein the comparing step (e) comprises recurrently taking a plurality of audits of a live server at predetermined time intervals to track compliance against at least one of the baseline snapshot and the reference model over time.
- 18. The method of claim 1, wherein the comparing step (e) further comprises comparing live servers by:
(i) comparing values of explicitly selected sever objects that are commonly shared between a first live server and a second live server. (ii) comparing values of implicitly selected sever objects that are implicitly specified in the template.
- 19. The method of claim 1, wherein the correcting step (f) further comprises restoring a previous configuration of the second server from the reference model.
- 20. The method of claim 1 further comprising:
provisioning a newly-added third server on the network in accordance with the reference model.
- 21. The method of claim 1, wherein the correcting step (f) further comprises:
after the comparing the comparing step (e), collecting the discrepancies identified in a transaction package to execute a plurality of server change operations on the second server; and synchronizing the second server with the reference model.
- 22. The method of claim 1 further comprising:
updating the reference model; and propagating the updates to the plurality of servers with a transaction package.
- 23. The method of claim 1 further comprising:
(i) categorizing in a template each of the server objects into categories, sub-categories, and associated keywords; and (ii) selecting categorically related server objects in second templates.
- 24. The method of claim 23, wherein the categorizing step (i), the categories comprise server type categories including at least one of an application server category, a web server category, and a database server category.
- 25. The method of claim 23, wherein the categorizing step (i), the categories comprise configuration parameter type categories including at least one of network parameters, capacity parameters, availability parameters, performance parameters, and security parameters.
- 26. A system for configuring a plurality of heterogeneous servers across a network, the system comprising:
(a) a browser for browsing server objects in each of a plurality of servers across a network; (b) a template comprising a selected plurality of identifiers of at least one browsed server objects; (c) a recorder for recording values of the selected plurality of server object identifiers in the template from at least one of the plurality of servers. (d) a reference model comprising recorded values of the selected plurality of server object identifiers in the template from a gold server of the plurality of servers; (e) a comparator, in communication with the reference model, for comparing a second server from the plurality of servers to the reference model; and (f) a corrector, in communication with the comparator, for correcting discrepancies of the second server against the reference model.
- 27. The system of claim 26, wherein the server objects comprise at least one of files and configuration file entries.
- 28. The system of claim 27, wherein the server objects comprise at least one of a primitive server object, a compound server object, an abstract configuration server object, and a component server object.
- 29. The system of claim 28, wherein the primitive server object comprises an elemental server object.
- 30. The system of claim 28, wherein the compound server object comprises at least one of the primitive server objects, the abstract configuration server objects, the component server objects, and the compound server objects.
- 31. The system of claim 28, wherein the abstract configuration server object comprises an entry in a configuration file mapped to a corresponding entry in a common abstract configuration file format.
- 32. The system of claim 28, wherein the component server object comprises a sequenced collection of server objects.
- 33. The system of claim 26, wherein the template comprises a manually created template.
- 34. The system of claim 26, wherein the template comprises an externally imported template.
- 35. The system of claim 26, wherein the template comprises at least one of previously defined templates.
- 36. The system of claim 26, wherein the reference model comprises a manually created template.
- 37. The system of claim 26, wherein the reference model comprises at least one of previously defined reference models.
- 38. The system of claim 26, wherein the recorder arbitrarily takes a snapshot of the current configuration of a first server.
- 39. The system of claim 38, wherein the comparator compares a live-version of the first server to the snapshot.
- 40. The system of claim 38, wherein the corrector further restores a previous configuration of the first server from the snapshot.
- 41. The system of claim 26, wherein the recorder recurrently takes a plurality of snapshots of a first server at predetermined time intervals, wherein a first snapshot from the plurality of snapshots forms a baseline for subsequent snapshots of the plurality of snapshots and the subsequent snapshots capture changes against the baseline over time.
- 42. The system of claim 41, wherein the comparator recurrently takes a plurality of audits of a live server at predetermined time intervals to track compliance against at least one of the baseline snapshot and the reference model over time.
- 43. The system of claim 26, wherein the comparator compares live servers by:
(i) comparing values of explicitly selected sever objects that are commonly shared between a first live server and a second live server. (ii) comparing values of implicitly selected sever objects that are implicitly specified in the template.
- 44. The system of claim 26, wherein the corrector further restores a previous configuration of the second server from the reference model.
- 45. The system of claim 26 further comprising:
provisioning a newly-added third server on the network in accordance with the reference model.
- 46. The system of claim 26, wherein the correcting step further
collects the discrepancies identified in a transaction package to execute a plurality of server change operations on the second server; and synchronizing the second server with the reference model.
- 47. The system of claim 26 further comprising:
an updater for updating the reference model and propagating the updates to the plurality of servers with a transaction package.
- 48. The system of claim 26 further comprising:
(i) a first template categorizing each of the server objects into categories, sub-categories, and associated keywords; and (ii) second templates including a selected group of categorically related server objects by server type categories.
- 49. The system of claim 48, wherein the categories comprise server type categories including at least one of an application server category, a web server category, and a database server category.
- 50. The system of claim 48, wherein the categories comprise configuration parameter type categories including at least one of network parameters, capacity parameters, availability parameters, performance parameters, and security parameters.
- 51. The system of claim 26, wherein the reference model comprises an externally imported template.
CROSS-REFERENCE TO RELATED APPLICATION
[0001] This application claims priority to and the benefit of U.S. Provisional Patent Application Serial No. 60/388,112 filed Jun. 12, 2002, entitled METHOD AND SYSTEM FOR SIMPLIFYING SERVER MANAGEMENT, and U.S. Provisional Patent Application having Attorney Docket No.: BLD-002PR (Serial Number not yet assigned) filed Mar. 10, 2003, entitled METHOD AND SYSTEM FOR SIMPLIFYING SERVER MANAGEMENT, the entire disclosures of which are hereby incorporated by reference.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60388112 |
Jun 2002 |
US |
|
60453308 |
Mar 2003 |
US |