High Availability Distributed Storage
High Availability Distributed Storage
This domain tests storage that survives node loss without shared LUNs: Ceph's RADOS components and GlusterFS volumes. The exam expects you to reason about replica counts, quorum, and recovery rather than memorize only commands.
Core rules
- Ceph monitors form quorum; use an odd number, normally three. OSDs store data, MDS serves CephFS, and MGR exposes metrics. CRUSH computes placement, so no central index is consulted.
- Pools define
size(copies) andmin_size(write quorum).size=3, min_size=2tolerates one OSD loss and keeps writes available;min_size=1permits writes with no redundancy. PG count affects balance; autoscaling can manage it. - Use
ceph -s,ceph osd tree, andceph health detail. Before planned OSD downtime,ceph osd set noout; unset it afterward.ceph osd outtriggers rebalance. - GlusterFS bricks are export directories. Volumes can be distributed, replicated, dispersed, or use an arbiter. Replica 3 tolerates one brick loss; replica 2 without an arbiter risks split-brain.
gluster volume heal <vol> infoshows pending repairs; the self-heal daemon repairs files. - Both systems need time synchronization and failure-domain-aware placement.
Worked example
A three-node Ceph cluster has a pool with size=3 and min_size=2. One node fails: each placement group still has two copies, writes continue, and ceph -s reports degraded while recovery proceeds. If min_size=3, writes block until the third copy returns; if min_size=1, writes continue but a second failure can lose data. For planned maintenance, set noout so OSDs are not marked out and rebalanced immediately; unset it when the node returns.
Traps
Two monitors do not provide quorum tolerance. min_size=1 defeats replication. Ignoring PG counts causes imbalance. Gluster replica 2 can split-brain without an arbiter. Healing is not instant, and force at volume creation does not fix a bad layout.