Skip to main content
RunBook Academy

CephVI · Ceph ArchitectureCeph Architecture

The daemons — mon, mgr, osd, mds, rgw and what each one owns

Foundation⏱ ~15 mincephcephadm

What you'll learn

  • State the responsibility of each Ceph daemon type
  • Determine how many of each daemon a cluster needs
  • Predict cluster behaviour when each daemon type fails
  • Locate and read the logs for each daemon under cephadm

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

Every Ceph incident begins with identifying which daemon is misbehaving. Knowing what each one owns turns that from a search into a deduction.

The five types

MON — monitors. Maintain the cluster map and reach consensus on changes. Three or five, always odd. Essential: without quorum nothing works.

MGR — managers. Provide metrics, the dashboard, the balancer, and the orchestrator. Active/standby, two is normal. Not in the data path — the cluster serves I/O with no MGR at all, but you lose visibility and orchestration.

OSD — object storage daemons. One per storage device (or several per fast NVMe). Hold the data, participate in acting sets, perform recovery and scrubbing. The bulk of the cluster.

MDS — metadata servers. Only for CephFS. Serve directory structure, file metadata, and capabilities to clients. Active plus standby per filesystem rank.

RGW — RADOS gateways. Only for object storage. Stateless HTTP daemons presenting S3 and Swift. Scale by adding more behind a load balancer.

Failure consequences

DaemonOne failsEnough fail
MONquorum continues on the restno quorum: cluster halts
MGRstandby takes over in secondsno metrics, dashboard, or orchestration; I/O unaffected
OSDPGs degrade, recovery startsPGs below min_size: writes block
MDSstandby takes over; brief pauseCephFS unavailable; RBD and RGW unaffected
RGWload balancer routes elsewhereS3 unavailable; RBD and CephFS unaffected

The pattern worth internalising: MON failures are cluster-wide, OSD failures are pool-scoped, and MDS and RGW failures are service-scoped.

Under cephadm

All daemons run as containers managed by systemd, named by cluster FSID and daemon id:

FSID=$(ceph fsid)

ceph orch ps
ceph orch ps --daemon-type osd
systemctl status "ceph-$FSID@osd.12.service"
cephadm logs --name osd.12
ceph orch daemon restart mgr.host1.abcdef

ceph orch ps is the inventory: what is running, where, which version, and how long it has been up. It is the first command when a daemon is suspected of being absent rather than misbehaving.

Sizing

  • MON: 3 for most clusters, 5 for large or multi-domain ones. Odd.
  • MGR: 2. One active, one standby.
  • OSD: one per device, or 2-4 per high-end NVMe.
  • MDS: one active per rank plus at least one standby, per filesystem.
  • RGW: at least 2 behind a load balancer, then scale with request rate.

Quiz

Knowledge check · 4 questions

  1. Q1. The active MGR fails and there is no standby. What is the immediate effect on client I/O?

  2. Q2. MDS, MGR, and RGW daemons can be destroyed and recreated with no data consequence, while OSDs cannot.

  3. Q3. ceph status has been unavailable for twenty minutes and the dashboard is down, but a monitoring alert says VM disk I/O is normal. Determine what has failed and what to do.

    Cluster with 3 MONs, 1 MGR, 96 OSDs, RGW and CephFS both in use. ceph status from a client host hangs or returns very sparse output. The dashboard URL does not respond. Independent monitoring shows VM disk latency normal and S3 requests succeeding. The single MGR host was rebooted for patching twenty minutes ago and has not come back.

  4. Q4. Classify the blast radius of a failure in each Ceph daemon type.

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

Production discipline

Run two MGRs so the failure that blinds your monitoring is a seconds-long failover, and alert on the absence of an active MGR because that failure removes the alerting path itself. Keep monitor counts odd and sized to the topology. Treat OSD operations as the careful ones — out, wait for active+clean, then purge, one at a time — since OSDs are the only daemon that owns data, while MGR, MDS, and RGW can be destroyed and recreated freely.

Cross-course references

  • Ceph: Part X (Manager Daemons) for MGR modules and failover.
  • Ceph: Part XLI (Metadata Servers) for MDS ranks and standbys.
  • Ceph: Part XLIX (cephadm) for how the daemons are deployed and managed.