Skip to main content

ADR-005: Raft Consensus for Clustering

Status

Accepted

Context

Need consistent state across cluster with <100ms failover.

Decision

Use Raft consensus algorithm via openraft crate.

Consequences

Positive

  • Well-understood algorithm
  • Strong consistency
  • Production-ready implementation

Negative

  • Requires odd number of nodes
  • Network partition limitations

Alternatives Considered

  1. Paxos: More complex
  2. PBFT: Byzantine fault tolerance unnecessary
  3. Custom protocol: Too risky

Implementation

The Raft implementation provides leader election, log replication, and membership changes. See the cluster subsystem documentation for integration details.