Claims
- 1. A method of managing a plurality of components from a framework, the method comprising the steps of:
establishing a composite resource that includes a plurality of members, where each member of said plurality of said members is capable of providing a comparable service; monitoring, using framework resources, a state of each member of said composite resource; causing a component that requires said comparable service to request said service from said framework resources; providing said service to said component by:
arranging, by said framework resources, for said service to be provided to said component by a particular member of said composite resource; when said particular member ceases to be active, automatically using said service already provided by another member, and/or causing said service to be provided to said component by another member of said plurality of members; and maintaining a state of the composite resource independently of the state of each member of said composite resource.
- 2. The method of claim 1, wherein the plurality of members includes a set of active members and a set of inactive members, wherein members in the set of active members provide the comparable service in a manner that is different than the manner used by members in the set of inactive members.
- 3. The method of claim 1, further comprising the step of evaluating the composite resource in response to one or more of the members in the plurality of members ceasing to be active.
- 4. The method of claim 1, further comprising the step of configuring the composite resource through the framework resources based on a user-defined criteria.
- 5. The method of claim 1, further comprising the step of stopping the composite resource using the framework resources, so that each member in the plurality of members is stopped.
- 6. The method of claim 1, further comprising relocating a source of the composite resource from a node where a member in the active set of members resides to a node where a member in the inactive set of members resides just prior to performing the step of relocating the source, wherein at least one or more of the inactive plurality of members is not also one of the first plurality of members.
- 7. The method of claim 1, further comprising measuring a performance characteristic of the composite resource from the framework resources.
- 8. The method of claim 1, further comprising providing an interface to enable an administrator to instruct the coordinator to perform one or more operations on the composite resource through the framework resources.
- 9. The method of claim 1, further comprising enabling one or more resources to be dependent on the comparable service irrespective of which of the plurality of members is providing the comparable service.
- 10. The method of claim 1, wherein establishing a composite resource includes enabling each of the plurality of member to be used with a set of resources on that member's node, wherein the set of resources on that member's node are required by the member to provide the service.
- 11. The method of claim 1, wherein the step of providing said service to said component includes:
arranging for said service to be provided to said component by a first member of said composite resource from the first member's node; when the first member fails, causing the service to be provided to said component by a second member in the plurality of member from the second member's node, wherein the second member's node is different than the first member's node; and wherein prior to the first member failing, the method further includes the step of enabling the second member to provide the service to the component using a set of resources on the second member's node, the set of resources on the second member's node being required by the second member to provide the service.
- 12. The method of claim 1, wherein providing said service to said component includes performing at least one of reading data from and writing data to a data source that is shared by the plurality of nodes.
- 13. The method of claim 11, further comprising detecting that the first member has failed, but that the first member's node is still operative, and wherein the step of causing the service to be provided to said component by a second member is performed while the one or more other resources on the first member's node are operative.
- 14. The method of claim 13, further comprising the step of automatically restarting the first member after detecting that the first member has failed.
- 15. The method of claim 13, wherein the step of automatically causing the service to be provided to said component by a second member is performed while attempting recovery of the first member.
- 16. The method of claim 1, wherein establishing a composite resource includes enabling a plurality of instances of a database application to be executed on a plurality of nodes.
- 17. The method of claim 1, further comprising executing the composite resource from the framework so that the composite resource appears to at least partially reside on one of the nodes in the plurality of nodes.
- 18. The method of claim 1, further comprising executing said coordinator on a framework shared by the plurality of nodes.
- 19. The method of claim 1, further comprising the step of executing an application on a first node, wherein the application depends on the composite resource.
- 20. The method of claim 19, further comprising providing the service to the application from a first member in the plurality of members, wherein the first member resides on the first node, and wherein in response to the first member ceasing to provide the service, the method further comprises terminating execution of the application.
- 21. The method of claim 20, further comprising providing the service to the application from a first member in the plurality of members, wherein the first member resides on the first node, and wherein in response to the first member ceasing to provide the service, the method further comprises providing the service to the application executing on the first node from a second member in the plurality of members that resides on a second node.
- 22. The method of claim 1, wherein the method further comprises:
initiating a member as part of the composite resource while the composite is running; and in response to the first member being initiated as a member of the composite resource, causing said member to ensure that the composite resource is running.
- 23. A method for managing a plurality of components, the method comprising:
establishing a first composite resource that includes a first plurality of members, the first plurality of members residing on a plurality of nodes, each of said first plurality of members being active to comparably provide a service; establishing a second plurality of members, the second plurality of members residing on the plurality of nodes, each of said second plurality of members being able to comparably provide the service when activated; arranging for members in the first plurality of members to provide the service to a first component that requests the service, wherein the first member resides on a first node in the plurality of nodes; in response to one or more of the members in the first plurality of members becoming inactive, performing the steps of:
activating a second member in the second plurality of members in response to one or more of the members in the first plurality of members becoming inactive; and automatically providing the service using an active second member in one of the first plurality of members or in the second plurality of members.
- 24. The method of claim 23, wherein a state of the composite resource is maintained independently of a state of each member that is active in the composite resource.
- 25. The method of claim 23, wherein automatically providing the service using an active second member in one of the first plurality of members includes maintaining a cardinality of the members that actively provide the service of the composite resource.
- 26. The method of claim 24, further comprising the step of expanding the cardinality by activating multiple members in the second plurality of members into providing the service.
- 27. The method of claim 22, wherein arranging for a first member in the first plurality of members to provide the first service is performed using resources of a framework shared by the first plurality of members and the second plurality of members.
- 28. The method of claim 26, further comprising maintaining status information about the first plurality of members and the second plurality of members through the framework resources.
- 29. A computer readable medium for carrying one or more sequences of instructions for managing a plurality of components, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of:
establishing a composite resource that includes a plurality of members, where each member of said plurality of said members is capable of providing a comparable service; monitoring, at a coordinator, a state of each member of said composite resource; causing a component that requires said comparable service to request said service from said coordinator; providing said service to said component by:
arranging, by said coordinator, for said service to be provided to said component by a particular member of said composite resource; when said particular member ceases to be active, automatically using said service already provided by another member, and/or causing said service to be provided to said component by another member of said plurality of members; and maintaining a state of the composite resource independently of the state of each member of said composite resource.
- 30. The computer readable medium of claim 29, wherein the plurality of members includes a first member and a second member, and wherein the first member provides said comparable service in a manner that is different than the manner used by the second member to provide said comparable service.
- 31. The computer readable medium of claim 29, further comprising instructions for initiating recovery of the composite resource when each member of said plurality of members has ceased to be active.
- 32. The computer readable medium of claim 29, further comprising instructions for configuring the composite resource through the coordinator based on a user-defined criteria.
- 33. The computer readable medium of claim 29, further comprising instructions for stopping the composite resource using the coordinator, so that each member in the plurality of members is unable to provide the comparable service.
- 34. The computer readable medium of claim 29, further comprising instructions for relocating the composite resource from a first plurality of nodes where the first plurality of members reside, to a second plurality of nodes where a second plurality of members reside, wherein at least one or more of the second plurality of members is not also one of the first plurality of members.
- 35. The computer readable medium of claim 29, further comprising instructions for measuring a performance characteristic of the composite resource from the coordinator.
- 36. The computer readable medium of claim 29, further comprising instructions for providing an interface to enable an administrator to instruct the coordinator to perform one or more operations on the composite resource through the coordinator.
- 37. The computer readable medium of claim 29, further comprising instructions for enabling one or more resources to be dependent on the comparable service irrespective of which of the plurality of members is providing the comparable service.
- 38. The computer readable medium of claim 29, wherein instructions for establishing a composite resource include instructions for enabling each of the plurality of member to be used with a set of resources on that member's node, wherein the set of resources on that member's node are required by the member to provide the service.
- 39. The computer readable medium of claim 29, wherein instructions for providing said service to said component include instructions for performing the steps of:
arranging for said service to be provided to said component by a first member of said composite resource from the first member's node; when the first member ceases to be active, causing the service to be provided to said component by a second member in the plurality of member from the second member's node, wherein the second member's node is different than the first member's node; and wherein prior to the first member ceasing to be active, the computer readable medium further includes the step of enabling the second member to provide the service to the component using a set of resources on the second member's node, the set of resources on the second member's node being required by the second member to provide the service.
- 40. The computer readable medium of claim 29, wherein instructions for providing said service to said component include instructions for performing at least one of reading data from and writing data to a data source that is shared by the plurality of nodes.
- 41. The computer readable medium of claim 39, further comprising instructions for detecting that the first member has failed, but that the first member's node is still operative, and wherein instructions for causing the service to be provided to said component by a second member is performed while the one or more other resources on the first member's node are operative.
- 42. The computer readable medium of claim 41, wherein instructions for performing the step of automatically causing the service to be provided to said component by a second member include instructions so that said step is performed while attempting recovery of the first member.
- 43. The computer readable medium of claim 29, wherein instructions for establishing a composite resource include instructions for enabling a plurality of instances of a database application to be executed on a plurality of nodes.
- 44. The computer readable medium of claim 29, further comprising instructions for executing said coordinator on one of said plurality of nodes.
- 45. The computer readable medium of claim 29, further comprising instructions for executing said coordinator on a framework shared by the plurality of nodes.
- 46. The computer readable medium of claim 29, further comprising instructions for performing the step of executing an application on a first node, wherein the application depends on the composite resource.
- 47. The computer readable medium of claim 46, further comprising instructions for providing the service to the application from a first member in the plurality of members, wherein the first member resides on the first node, and wherein in response to the first member ceasing to provide the service, the computer readable medium further comprises instructions for terminating execution of the application.
- 48. The computer readable medium of claim 47, further comprising instructions for providing the service to the application from a first member in the plurality of members, wherein the first member resides on the first node, and wherein in response to the first member ceasing to provide the service, the computer readable medium further comprises instructions for providing the service to the application executing on the first node from a second member in the plurality of members that resides on a second node.
- 49. The computer readable medium of claim 29, wherein the computer readable medium further comprises instructions for performing the steps of:
initiating a member as part of the composite resource while the composite is running; and in response to the first member being initiated as a member of the composite resource, causing said member to ensure that the composite resource is running.
- 50. A computer readable medium for carrying one or more sequences of instructions for managing a plurality of components, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of:
establishing a first composite resource that includes a first plurality of members, the first plurality of members residing on a plurality of nodes, each of said first plurality of members being able to comparably provide a first service; establishing a second composite resource that includes a second plurality of members, the second plurality of members residing on the plurality of nodes, each of said second plurality of members being able to comparably provide a second service; arranging for a first member in the first plurality of members to provide the first service to a first component that requests the first service, wherein the first member resides on a first node in the plurality of nodes; arranging for a second member in the second plurality of members to provide the second service to a second component that requests the second service, wherein the second member resides on the first node; when the first member ceases to be active, automatically providing the first service using a third member in the first plurality of members, the third member residing on a second node that is different than the first node; providing the second service from the first node independently of the first member in the first plurality of members ceasing to be active.
- 51. The computer readable medium of claim 50, wherein instructions for providing the second service independently of the first member in the first plurality of members ceasing to be active include instructions for providing the second service continuously after the first member ceases to be active.
- 52. The computer readable medium of claim 50, further comprising instructions for performing the steps of:
enabling the first member to provide the first service using a first set of one or more resources, the first set of one or more resources being required by the first member to provide the first service, wherein the first set of resources resides on the first node; enabling the second member to provide the second service using a second set of one or more resources, the second set of resources being required by the second member to provide the second service, wherein the second set of resources resides on the first node and has at least one resource that overlaps with the first set of resources.
- 53. The computer readable medium of claim 52, wherein instructions for providing the second service from the first node include instructions for maintaining the second set of resources operative for use with the second member in providing the second service immediately after detecting that the first member has ceased to be active.
- 54. The computer readable medium of claim 50, wherein instructions for arranging for a first member in the first plurality of members to provide the first service include instructions for using a first coordinator for coordinating the first service to assign the first member to provide the first service to the first component.
- 55. The computer readable medium of claim 54, wherein instructions for arranging for a second member in the first plurality of members to provide the second service include instructions for using a second coordinator for coordinating the second service to assign the second member to provide the second service to the second component.
- 56. The computer readable medium of claim 55, further comprising instructions for maintaining status information about the first plurality of members and the second plurality of members through the first coordinator and the second coordinator.
REFERENCED APPLICATIONS
[0001] This application claims benefit of priority to a U.S. Provisional Application having serial No. 60/334,349, filed Nov. 30, 2001, entitled “Rapid Recovery Events, Virtual Composite Objects, And Enable/Disable Attributes For Simple and Composite Resources For Use In A High Availability Framework,” naming Colrain et. al as inventors; and to U.S. Provisional Application having serial No. 60/426,587, filed Nov. 15, 2002, entitled “Virtual Composite Objects for Providing High Availability of Resources on Networked Systems” (Attorney Docket No. 50277-1968). The aforementioned priority applications are hereby incorporated by reference.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60334349 |
Nov 2001 |
US |
|
60426587 |
Nov 2002 |
US |