In Windows Server 2008-based failover clusters, the cluster configuration information is tracked across all nodes in the cluster and on a witness disk, if one is configured. A Paxos tagging process is used to guarantee consistency of the cluster configuration across all nodes and on the witness disk. The Paxos algorithm is used for guaranteeing consistency across distributed systems. The algorithm is used by the Cluster service to guarantee data consistency when updates to the cluster configuration are propagated across all nodes in the cluster.
In Windows Server 2008-based failover clusters, the Paxos tag consists of three numbers. Each number is separated by a colon. For example, a tag may resemble the following:
These numbers represent the NextEpoch number, the LastUpdateEpoch number, and the sequence number. Ideally, the Paxos tag should be the same across all replicas of the cluster configuration. The Epoch numbers are changed every time that the cluster is formed. The sequence number is changed every time that an update is made to the cluster configuration. The synchronization process in a cluster sends out a proposal to all the nodes in the cluster. The proposal consists of a sequence number and a proposal number. A cluster node checks its local copy of the cluster configuration to see whether it has a newer sequence number or a higher proposal number. If the node does not have more current information (higher numbers), the node sends an acceptance back to the proposing node. If most of the nodes in the cluster (a "consensus") send back an acceptance to the proposing node, the data is sent to each cluster node to be incorporated locally.
When a cluster node joins a cluster, the node sends its Paxos tag information as part of the joining process. If the Paxos tag information for the joining node is older than the current cluster configuration, a complete copy of the cluster configuration is pushed to the node as part of the joining process. This copy of the cluster configuration is known as a cluster registry hive. This behavior guarantees that all nodes that are joining a cluster have the most up-to-date configuration information.
The Paxos tag format in a cluster can change only in the following two scenarios:
- When an authoritative restore of the cluster configuration is executed.
- When the Cluster service is started by using the /forcequorum switch. The shorthand for the switch is /fq.
The new Paxos tag formatting uses time stamps. The following is an example of the new formatting:
This format guarantees that the nodes that run the Cluster service together with this Paxos tag format will have the golden or authoritative copy of the cluster configuration. Any node that joins the cluster will automatically have this copy of the cluster configuration pushed to it during the joining process. Therefore, when you decide to force the Cluster service to start on a specific node in a Windows Server 2008-based failover cluster, it is important to select the node that has the most up-to-date cluster configuration information. Otherwise, some configuration settings may be lost.