Raft
A consensus algorithm designed to be understandable, decomposing agreement into leader election, log replication and safety.
Consensus is the problem of getting a group of machines to agree on a value despite failures. Paxos solves it and is notoriously hard to reason about; Raft solves the same problem with understandability as an explicit design goal, which is why almost every recent system — etcd, Consul, CockroachDB, TiKV, Kafka's newer metadata quorum — uses it.
The decomposition is the thing to remember. Leader election: nodes have randomised election timeouts; a node that times out becomes a candidate and requests votes; a majority makes it leader for a numbered term. Log replication: all writes go to the leader, which appends to its log and replicates; an entry is committed once a majority has it. Safety: a node will not vote for a candidate whose log is behind its own, which is what guarantees a committed entry is never lost.
Two practical consequences. Progress requires a majority, so a three-node cluster tolerates one failure and a two-node cluster tolerates none — which is why a witness node exists. And every write costs a round trip to a majority, so placing the members across regions puts inter-region latency on every write.