DISTRIBUTED CONTROL PROTOCOL FOR HIGH AVAILABILITY IN MULTI-NODE STORAGE CLUSTER
First Claim
1. A method comprising:
- minoring information maintained in a first non-volatile random access memory (NVRAM) of a first node to a second NVRAM of a second node in an existing cluster to establish a high availability (HA) partner relationship with balanced NVRAM mirroring between the first and second nodes;
generating a message at a third node to request joining of the third node to the existing cluster;
broadcasting the message over a cluster switching fabric coupled to the nodes, the message broadcasted as a first message of a distributed control protocol;
in response to receiving the first broadcasted message, broadcasting a second message from each node over the cluster switching fabric of the cluster, wherein the second message includes parameters about the node; and
in response to receiving the second broadcasted message, implementing a daisy-chain processing technique at a master node of the cluster to rebalance the NVRAM minoring and alter the HA partner relationship among the nodes of a new cluster.
1 Assignment
0 Petitions
Accused Products
Abstract
A distributed control protocol dynamically establishes high availability (HA) partner relationships for nodes in a cluster. A HA partner relationship may be established by copying (mirroring) information maintained in a non-volatile random access memory (NVRAM) of a node over a HA interconnect to the NVRAM of a partner node in the cluster. The distributed control protocol leverages a Cluster Liveliness and Availability Manager (CLAM) utility of a storage operating system executing on the nodes to rebalance NVRAM mirroring and alter HA partner relationships of the nodes in the cluster. The CLAM utility is configured to maintain various cluster related issues, such as CLAM quorum events, addition or subtraction of a node in the cluster and other changes in configuration of the cluster. Notably, the CLAM utility is an event based manager that implements the control protocol to keep the nodes informed of any cluster changes through event generation and propagation.
51 Citations
20 Claims
-
1. A method comprising:
-
minoring information maintained in a first non-volatile random access memory (NVRAM) of a first node to a second NVRAM of a second node in an existing cluster to establish a high availability (HA) partner relationship with balanced NVRAM mirroring between the first and second nodes; generating a message at a third node to request joining of the third node to the existing cluster; broadcasting the message over a cluster switching fabric coupled to the nodes, the message broadcasted as a first message of a distributed control protocol; in response to receiving the first broadcasted message, broadcasting a second message from each node over the cluster switching fabric of the cluster, wherein the second message includes parameters about the node; and in response to receiving the second broadcasted message, implementing a daisy-chain processing technique at a master node of the cluster to rebalance the NVRAM minoring and alter the HA partner relationship among the nodes of a new cluster. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system comprising:
-
one or more processors of a first node interconnected by a cluster switching fabric to a plurality of nodes, wherein the first node is further coupled to one or more of the nodes by a high availability (HA) interconnect; a first non-volatile random access memory (NVRAM) connected to the one or more processors, the first NVRAM configured to maintain information associated with the first node; and a memory coupled to the one or more processors and configured to store a storage operating system implemented as one or processes, the one or more processes executable by the one or more processors to; minor the information maintained in the first NVRAM to a second NVRAM of a second node in an existing cluster to establish a HA partner relationship with balanced NVRAM mirroring between the first and second nodes; receive a first message of a distributed control protocol over the cluster switching fabric, the first message configured to request joining of a third node to the existing cluster; receive a second message from each node of the existing cluster over the cluster switching fabric, wherein the second message includes first parameters about the node; and implement a daisy-chain processing technique using the first parameters to rebalance the NVRAM mirroring and alter the HA partner relationship among the nodes of a new cluster. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A non-transitory computer readable medium including program instructions for execution on one or more processors, the program instructions when executed operable to:
-
minor information maintained in a first non-volatile random access memory (NVRAM) of a first node to a second NVRAM of a second node in an existing cluster to establish a high availability (HA) partner relationship with balanced NVRAM mirroring between the first and second nodes; generate a message at a third node to request joining of the third node to the existing cluster; broadcast the message over a cluster switching fabric coupled to the nodes, the message broadcasted as a first message of a distributed control protocol; in response to receiving the first broadcasted message, broadcast a second message from each node over the cluster switching fabric of the cluster, wherein the second message includes parameters about the node; and in response to receiving the second broadcasted message, implement a daisy-chain processing technique at a master node of the cluster to rebalance the NVRAM minoring and alter the HA partner relationship among the nodes of a new cluster.
-
Specification