Skip to main content
RunBook Academy

CephXCVI · Node MaintenanceNode Maintenance

Reboots and the down-out interval

Intermediate⏱ ~17 mincephsystemctl

What you'll learn

  • Choose between noout and draining for a given outage
  • Compute the decision from the down-out interval
  • Execute a reboot correctly
  • Handle a reboot that takes longer than planned

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

A reboot and a decommission look similar and need opposite handling.

The decision

ceph config get osd mon_osd_down_out_interval
outage shorter than the interval
  → the OSDs return before anything happens automatically
  → noout is belt-and-braces, not strictly needed
  → but it protects against the interval being reached

outage longer than the interval
  → the OSDs would be marked out and recovery would start
  → noout prevents that, if they are returning
  → draining is correct if they are not
OutageApproach
A reboot, minutesnoout on the host
A kernel upgrade, tens of minutesnoout, or maintenance mode
Hardware work, hoursmaintenance mode
Daysdrain properly
Permanentdrain and remove

Why not drain for a reboot

Draining a host for a ten-minute reboot:
  moves the host's entire contents away
  then moves it all back when the host returns
  two full rebalances for ten minutes of downtime
ceph osd df tree | grep -A15 ceph-03

On a twelve-drive host holding 18 TB, that is 36 TB of movement for a reboot. noout is the difference between that and none.

Executing a reboot

# 1. cluster healthy
ceph -s | grep HEALTH_OK

# 2. scoped suppression
ceph osd add-noout ceph-03

# 3. reboot
ssh ceph-03 systemctl reboot

# 4. wait and verify
while ! ceph osd tree | grep -A15 ceph-03 | grep -q 'up'; do sleep 15; done
ceph osd tree | grep -A15 ceph-03

# 5. clear
ceph osd rm-noout ceph-03
ceph -s
# using maintenance mode, which handles the sequence
ceph orch host maintenance enter ceph-03
ssh ceph-03 systemctl reboot
ceph orch host maintenance exit ceph-03

When a reboot takes longer than planned

ceph -s
ceph osd tree | grep -A15 ceph-03
SituationAction
Booting slowly, will returnwait; noout is holding
Failed to boot, being fixedkeep noout if the fix is short
Failed to boot, unclearclear noout and let recovery start
Hardware failedclear noout, drain properly
The decision point: is the host returning within a time comparable to the
recovery duration? If not, the recovery should start.
ceph osd rm-noout ceph-03
# the OSDs are marked out after the interval, and recovery begins

Quiz

Knowledge check · 4 questions

  1. Q1. Why does a returning OSD after a short reboot catch up cheaply?

  2. Q2. Draining a host is the safe approach for any maintenance including a reboot.

  3. Q3. Handle a reboot that has overrun.

    A host was rebooted with noout set 90 minutes ago and has not returned. The cause is being investigated and the timeline is unclear.

  4. Q4. What is the decision point between keeping `noout` and letting recovery start?

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

Production discipline

Use noout for a reboot rather than draining — a drain moves the host’s contents away and back for an outage measured in minutes. When an outage overruns and the timeline is unclear, clear the flag: degradation with no recovery is worse than the backfill the recovery costs.

Cross-course references

  • Kubernetes: cordoning for a reboot rather than draining avoids the same wasted churn
  • Linux: temporarily failing an array member differs from removing it