Multiprocessor cluster membership manager framework
First Claim
1. In a multiprocessor system having multiple nodes, a shared resource accessible to all nodes and multiple interdependent levels of subsystems on each of said nodes, a method of combining particular ones of said nodes in a cluster so that it appears to users that the entire cluster is substantially a single node containing said shared resource, said method including notifying all levels of subsystems running on nodes presently in the cluster of transitions of nodes joining and leaving the cluster in order to provide a consistent view of active membership in the cluster.
1 Assignment
0 Petitions
Accused Products
Abstract
A shared-disk cluster system includes a cluster membership manager framework which coordinates the joining or leaving among all nodes in a cluster including taking the multiple layers of involved subsystems through transitions. Subsystems are notified of transitions in particular order depending upon the transition, and all nodes'"'"' subsystems receiving a notification must process that notification prior to another layer of subsystems being notified. One of the subsystems registered for notification is an event manager in user space. The event manager carries out transfers of client services, including user applications, resulting from nodes joining and leaving the cluster. This includes a registration and launch service which registers a node, or multiple nodes, in a cluster which claims, or is assigned, responsibility for the service and provides an optional launching function which initiates the client service upon successful registration.
-
Citations
44 Claims
- 1. In a multiprocessor system having multiple nodes, a shared resource accessible to all nodes and multiple interdependent levels of subsystems on each of said nodes, a method of combining particular ones of said nodes in a cluster so that it appears to users that the entire cluster is substantially a single node containing said shared resource, said method including notifying all levels of subsystems running on nodes presently in the cluster of transitions of nodes joining and leaving the cluster in order to provide a consistent view of active membership in the cluster.
- 12. In a multiprocessor system having multiple nodes, a shared resource accessible to all nodes and multiple interdependent levels of subsystems on each of said nodes, a method of initiating client services on particular ones of said nodes in a cluster so that it appears to said client services that the entire cluster is substantially a single node containing said shared resource, said method including choosing a node for each client service, registering the client service with that node, and notifying nodes presently in the cluster that the particular client service is registered with the particular node, whereby the particular service can be transferred to another node if the particular node leaves the cluster.
-
22. A multiprocessor cluster system having multiple nodes, a shared resource accessible to all nodes, a cluster communication medium between said nodes, and multiple subsystems on each of said nodes, comprising:
-
a cluster membership manager subsystem adapted to notify subsystems running on nodes presently in the cluster of transitions of nodes joining and leaving the cluster in order to provide a consistent view of active membership in the cluster; an event manager subsystem adapted to detect and react to cluster errors; and a registration and launch service responsive to said event manager and adapted to initiate client services on particular ones of said nodes in a cluster so that it appears to said client services that the entire cluster is substantially a single node containing said shared resource, wherein said registration and launch subsystem chooses a node for each client service, registers the client service with that node, and notifies nodes presently in the cluster that the particular service is registered with the particular node. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30, 31, 32)
-
-
33. A computer usable medium in which program code is embodied, said program code defining an operating system for a multiprocessor cluster system having multiple nodes, a shared resource accessible to all processors, and including multiple interdependent levels of subsystems, one of said subsystems being a cluster membership manager subsystem which defines a computer process for combining particular ones of said nodes in a cluster so that it appears to users that the entire cluster is substantially a single node containing the shared resource, said cluster membership manager subsystem adapted to notify all levels of subsystems running on nodes presently in a cluster of transitions of nodes joining and leaving the cluster in order to provide a consistent view of active membership in the cluster.
-
34. A computer usable medium in which program code is embodied, said program code defining an operating system for a multiprocessor cluster system having multiple nodes, a shared resource accessible to all processors, and including a registration and launch service which defines a computer process for allocating said nodes to perform client services, said registration and launch service adapted to initiate client services on particular ones of nodes so that it appears to said client services that the entire cluster is substantially a single node containing said shared resource, wherein said registration and launch service chooses a node for each client service, registers the client service with that node, and notifies nodes presently in the cluster that the particular service is registered with the particular node.
-
35. A computer usable medium in which program code is embodied, said program code defining an operating system for a multiprocessor cluster system having multiple nodes, and a shared resource accessible to all nodes, comprising:
-
multiple subsystems that are interdependent in levels, with higher level subsystems dependent on the operation of lower level subsystems; one of said subsystems comprising a cluster membership manager subsystem which defines a computer process for combining particular ones of said nodes in a cluster so that it appears to users that the entire cluster is substantially a single node containing the shared resource, said cluster membership manager subsystem adapted to notifying subsystems running on nodes presently in a cluster of transitions of processors joining and leaving the cluster in order to provide a consistent view of active membership in the cluster; and one of said subsystems including a registration and launch service which defines a computer process for allocating said nodes to perform client services, said registration and launch service adapted to initiate client services on particular ones of said nodes in a cluster so that it appears to said client services that the entire cluster is substantially a single node containing said shared resource, wherein said registration and launch service chooses a node for each client service, registers the client service with that node, and notifies nodes presently in the cluster that the particular service is registered with the particular node.
-
- 36. In a multiprocessor system having multiple nodes, and a shared resource accessible to all nodes, a method of initiating client services on particular ones of said nodes in a cluster so that it appears to said client services that the entire cluster is substantially a single node containing said shared resource, said method including providing a registration and launch service which defines a computer process, said registration and launch service adapted to selecting one of said nodes for a client service, registering that client service with the selected node and launching that client service on the selected node according to an action parameter included with that client service in response to registering that client service with the selected node.
- 39. In a multiprocessor system having multiple nodes, a shared resource accessible to all nodes and multiple interdependent levels of subsystems on each of said nodes, a method of combining particular ones of said nodes in a cluster so that it appears to users that the entire cluster is substantially a single node containing the shared resource, said method including taking said levels of said subsystems through node transitions in a manner that a particular level of said subsystems is taken through a node transition at all said ones of said nodes prior to taking a different level of said subsystems through the node transition.
-
44. A computer usable medium in which program code is embodied, said program code defining an operating system for a multiprocessor cluster system having multiple nodes, and a shared resource accessible to all nodes, and including multiple interdependent levels of subsystems;
- one of said subsystems being a cluster membership manager subsystem which defines a computer process for combining particular ones of said nodes in a cluster for that it appears to users that the entire cluster is substantially a single node containing the shared resource, said cluster membership manager subsystem adapted to taking all levels of subsystems through node transitions in a manner that a particular level of said subsystems is taken through a node transition at all said ones of said nodes prior to taking a different level of said subsystems through the node transition.
Specification