Skip to main content
RunBook Academy

CephIX · Monitor QuorumMonitor Quorum

The quorum model in operation

Intermediate⏱ ~15 minceph

What you'll learn

  • Read quorum_status and interpret every field
  • Distinguish configured tolerance from available tolerance
  • Monitor quorum health as a first-class signal
  • Decide whether a planned action is safe against current quorum

Prerequisites

None — start here.

Verified against Ceph Tentacle 20.2.x · Ceph Squid 19.2.x (supported previous) · cephadm matches the verified Ceph release · podman 4.x · csi-rbd and csi-cephfs current · RBD / CephFS / RGW current (matches Ceph release) · Linux kernel 5.15+ (5.10 minimum) · Ubuntu 24.04 LTS (Ceph host baseline) · Debian 12 (Bookworm) (Ceph host baseline) · Rocky Linux / RHEL / AlmaLinux 9.x (Ceph host baseline) · Proxmox VE 9.x (cross-course integration) · Kubernetes 1.31+ (cross-course integration) · 2026-08-18

Not yet marked complete on this device.

Why this matters in production

Quorum is the difference between a cluster that works and one that does not, and it is the check most often skipped before maintenance. Reading it takes one command; skipping it has taken down clusters.

Reading quorum_status

ceph quorum_status --format json-pretty
{
  "election_epoch": 42,
  "quorum": [0, 1, 2],
  "quorum_names": ["ceph-01", "ceph-02", "ceph-03"],
  "quorum_leader_name": "ceph-01",
  "monmap": {
    "epoch": 3,
    "num_mons": 3,
    "mons": [ ... ]
  }
}
FieldRead it as
quorumranks currently in quorum
quorum_nameswhich monitors those are
quorum_leader_namewho is committing proposals
election_epochincrements on every election — watch the rate
monmap.num_monshow many exist, versus how many are in quorum

The comparison that matters is len(quorum) against num_mons. Equal means full health. Fewer means reduced tolerance, and how much less is the number to compute before doing anything.

Configured versus available tolerance

configured tolerance = num_mons - ceil((num_mons + 1) / 2)
available tolerance  = len(quorum) - ceil((num_mons + 1) / 2)

For five monitors: configured tolerance is 2. If one is already out of quorum, available tolerance is 1 — and a plan that assumes 2 is a plan that halts the cluster.

Monitoring quorum

Three signals worth alerting on:

  1. Monitors in quorum below num_mons. Warning immediately; this is reduced tolerance.
  2. Monitors in quorum at exactly the majority. Critical — any further loss halts the cluster.
  3. Election epoch rate. More than a few per day means an active fault.

The first two come straight from quorum_status. The third needs a counter over the logs, and it is the one that catches problems before they become outages.

Deciding whether an action is safe

Before any action affecting a monitor:

  1. Read quorum_status.
  2. Compute available tolerance.
  3. If it is zero, do not proceed — restore a monitor first.
  4. If it is one and the action affects one monitor, proceed but do not overlap with anything else.
  5. Confirm quorum is restored before the next step.

That sequence, applied literally, prevents the most common way clusters lose quorum: two maintenance actions overlapping because nobody checked what was already absent.

Quiz

Knowledge check · 4 questions

  1. Q1. A five-monitor cluster has four monitors in quorum. What is the available tolerance?

  2. Q2. A monitor can be up and consuming resources while contributing nothing at all to the cluster's fault tolerance.

  3. Q3. Design a pre-maintenance gate for any work touching a monitor host, and justify each element.

    Team of six operators running a 300-OSD cluster with five monitors across three racks. Monitor-affecting work happens roughly weekly: kernel patching, hardware replacement, network changes. Two near-misses in the past year involved overlapping work while a monitor was already down. Nobody currently checks quorum before starting.

  4. Q4. Give the formula for available tolerance and explain why it differs from configured tolerance.

Passing score: 75%. Answers are checked in this browser.

Production discipline

Make reading quorum_status and computing available tolerance an executable gate at the start of every monitor-affecting runbook, not a remembered habit — the two most common quorum losses come from planning against configured tolerance and from overlapping work. Confirm quorum is fully restored between steps rather than treating a running process as restored tolerance. And alert on quorum below num_mons, on quorum at exactly the majority, and on election rate.

Cross-course references

  • Ceph: Part VIII (Monitors) for what quorum protects.
  • Ceph: Part XCV (Maintenance Flags) for the rest of the pre-maintenance checks.
  • Ceph: Part CXVII (Lost Monitor Quorum) for when the gate was not there.