Skip to main content

Cluster

A cluster is the set of nodes that together form and run one store. The nodes exchange membership over their cluster port, elect a leader, and present themselves to clients as a single store.

What a cluster is

A cluster is the running group of nodes behind a store. Each node is a process; the cluster is the whole that they add up to. The nodes share the store's data and coordination state, coordinate among themselves, and behave as one logical unit — clients connect to any node and the cluster routes the request to the right owner.

Because a store is a logical unit and a cluster is the concrete set of processes that realizes it, the two line up one-to-one: one store is backed by one cluster of nodes. What changes between a small and a large store is the number of nodes in its cluster, not how you address it.

Membership and the leader

The nodes in a cluster keep track of one another. They exchange membership information — which nodes exist and whether they are healthy — by gossiping over their cluster port (from 7811 up), the same peer-to-peer channel they use for replication. This is separate from the client port that applications connect to.

From the live, healthy members the cluster elects a leader. The leader is the node responsible for generating the authoritative partition map — the assignment of partitions to primary and replica nodes — and broadcasting it to the rest. Only live, authoritative members appear in that map; suspected, dead, or unreachable nodes are excluded, and transient states such as a failover in progress are tracked separately rather than encoded into the map.

How a cluster forms and changes

A cluster forms when a store is created and its nodes start and discover each other. As membership changes, the cluster reshapes itself: the total partition count is recalculated on every membership change as partitions per node × live nodes, so it tracks the shape of the cluster rather than freezing at creation time. When a node joins, partitions rebalance onto it; when a primary's node is lost, its replica is promoted and the cluster rebuilds a fresh replica to restore the replication factor.

note

In supervisor mode you grow the cluster by adding a whole server with Add-ZrServer, not by adding individual nodes. The server brings up its share of node processes, and the cluster's partition map expands to include them.

Cluster versus the terms readers confuse it with

The cluster is the running membership; the neighboring terms are either the client's view of it or the pieces inside it.

  • A cluster is not a workspace. A workspace is a client-side name for how to reach the managers; the cluster is the actual set of nodes.
  • A cluster is not a server. A server is one machine; a cluster spans the nodes across one or more servers.
  • A cluster is not a store. The store is the logical data unit you read and write; the cluster is the group of nodes that runs it.
TermScopeRole in the model
WorkspaceClient-sideNames the managers used to reach the cluster
ServerOne machineRuns and owns node processes
ClusterA group of nodesForms and runs one store; elects a leader
NodeOne processA member of the cluster; holds partitions
StoreLogicalThe data the cluster presents to clients
PartitionA keyspace sliceA unit the cluster assigns to nodes
ReplicaA partition copyRedundancy the cluster maintains across nodes

Next steps