Skip to content

Pausing Ceph on a single HyperCloud node

The no_out value can be temporarily set against a single Ceph OSD so that the cluster doesn’t immediately take disk recovery action when it loses contact with that OSD. This can be useful in maintenance scenarios where system updates are taking place in a controlled manner.

Approach

Given a hostname, this command line input will no-out all OSDs:

ceph osd add-noout $(ceph osd tree -f json | jq -r ‘.nodes[] | select(.name == “HOSTNAME”) | .children | @sh’)

Once the node has been serviced, this can be reversed with:

ceph osd rm-noout $(ceph osd tree -f json | jq -r ‘.nodes[] | select(.name == “HOSTNAME”) | .children | @sh’)