Skip to main content
RunBook Academy

← All assessments

Final assessment · advanced · ~120 min · pass ≥ 80%

Ceph & Distributed Storage for Production Sysadmins — Final Theory Assessment

Objectives

  • Demonstrate theoretical mastery of every production Ceph competency
  • Reason about RADOS, CRUSH, MON, OSD, PG, replication, EC, RBD, CephFS, RGW
  • Explain networking, observability, capacity, performance, maintenance, backup/DR
  • Reason about troubleshooting and incident response

42 graded questions · last verified 2026-08-17

Assessment questions

Objective questions are scored automatically. Scenario answers use a second-stage rubric for evidence, remediation, and rollback.

Knowledge check · 42 questions

  1. Q1. A client writes a 4 MiB object to a size=3 replicated pool. Which sequence correctly describes how that write is placed and acknowledged?

  2. Q2. The single active ceph-mgr daemon in a production cluster crashes and no standby was ever deployed. Which statement best describes what the cluster does next?

  3. Q3. Because CRUSH placement is deterministic, a Ceph client must still ask a monitor for the location of each object before it can read or write that object.

  4. Q4. A colleague argues that Ceph is really just an object store, and that RBD, CephFS, and RGW are thin protocol translators bolted on top. Explain which part of that is accurate, and state what each of the three services adds that RADOS itself does not provide.

  5. Q5. A size=3 replicated pool uses a CRUSH rule containing step take default class ssd, step chooseleaf firstn 0 type rack, step emit. The cluster has three racks, but SSD OSDs were only ever installed in two of them. What is the most likely observed result?

  6. Q6. One OSD in a 60-OSD cluster is persistently much fuller than its peers. Which command changes that OSD weight in the CRUSH map itself, as opposed to setting an override that is reset back to 1 when the OSD is marked out and then in again?

  7. Q7. Your cluster has 12 hosts spread evenly across 3 racks, and every pool is size=3 with a host-level failure domain. Management asks whether the cluster survives losing a rack. Describe what you would check, give the honest answer, and explain what you would change and what that change would cost.

  8. Q8. A colleague changed the failure domain of the production replicated rule from host to rack during business hours by editing and re-injecting the CRUSH map. Client latency has tripled and the cluster reports tens of thousands of misplaced objects. Describe the evidence you would collect, how you would stabilise the cluster, and the rollback you would keep ready.

    A 4-rack, 24-host cluster running a size=3 replicated pool that holds RBD images for roughly 300 virtual machines. The new rule is valid and CRUSH can satisfy it, so no PG is undersized and no data is at risk, but around 60 per cent of PGs are now remapped and backfilling. Client I/O is degraded but not blocked, and the change was not in the change calendar.

  9. Q9. A cluster runs five monitors. Two of them are lost simultaneously when a rack loses power. Which statement is correct?

  10. Q10. A three-monitor cluster loses two monitor hosts permanently to a hardware disaster. One monitor survives with an intact store, and all OSD hosts are healthy. What is the correct recovery path?

  11. Q11. A monitor whose data filesystem fills up will drop out of quorum, and the monitor store tends to grow fastest precisely while the cluster is unhealthy - which makes free space on the monitor hosts a first-class production alert.

  12. Q12. A network partition splits a cluster into a group of three monitors with half the OSD hosts and a group of two monitors with the other half. Applications on both sides report problems. Describe the evidence you would collect, what each side can and cannot do, and how you would recover.

    Two racks with redundant top-of-rack switches and a failed inter-rack link. Rack A holds mon.a, mon.b, mon.c and 12 OSD hosts; rack B holds mon.d, mon.e and 12 OSD hosts. All pools are size=3 with a host-level failure domain, so replicas are spread across both racks and most PGs have members on each side.

  13. Q13. An OSD backed by a 16 TB HDD was created with a 30 GB block.db partition on a shared NVMe device. Over two years the RocksDB metadata for that OSD grows beyond what the 30 GB partition can hold. What happens?

  14. Q14. BlueStore stores a checksum alongside every data extent it writes. What does that give Ceph that a backend without per-extent checksums could not offer?

  15. Q15. Explain what block, block.db, and block.wal are in BlueStore, and describe how you would decide whether to split block.db and block.wal onto separate devices for (a) an all-NVMe RBD pool serving VM disks and (b) an HDD-backed RGW workload with a very large number of small objects.

  16. Q16. During an incident ceph -s reports a PG in the state active+undersized+degraded+remapped+backfilling. Which single reading of that state is correct?

  17. Q17. During an incident you have two groups of unhealthy PGs: 240 PGs are active+degraded, and 3 PGs are stuck peering with one of them reported as down. Which do you work first, and for what reason?

  18. Q18. Increasing pg_num on a large, busy pool is a safe and near-instantaneous operation, because it only updates pool metadata and no data moves until new objects are written.

  19. Q19. A cluster has grown from 12 OSDs to 96 over two years, but its main RBD pool still carries the pg_num it was created with. Utilisation across OSDs is badly uneven and a handful of OSDs are logging slow ops. Describe the evidence you would collect, the remediation, and the rollback.

    A size=3 replicated pool named vms with pg_num 256 on a 96-OSD all-NVMe cluster serving about 300 virtual machines. The fullest OSD is at 84 per cent and the emptiest at 41 per cent. The PG autoscaler is in warn mode and has been emitting a recommendation that nobody has actioned. The cluster is at 63 per cent raw utilisation overall.

  20. Q20. A pool uses an erasure code profile with k=4 and m=2 and was created with default settings. Two OSDs holding shards of the same PG fail at the same time. What happens to that PG?

  21. Q21. You plan a k=8, m=3 erasure-coded pool with a host-level failure domain for an archive workload. What is the minimum number of OSD hosts required for the pool to reach active+clean, and what is the practical minimum you would actually build?

  22. Q22. Overwriting a small region of a large object on an erasure-coded pool costs more than the same overwrite on a replicated pool, because the affected stripe has to be read, re-encoded, and written back.

  23. Q23. A team proposes moving the VM disk pool from size=3 replication to a k=4, m=2 erasure-coded pool in order to reclaim capacity. Give the capacity argument in their favour, at least three production reasons to refuse, and state the conditions under which you would agree.

  24. Q24. A cluster is configured with a separate public network and cluster network. The cluster network switch fails while the public network stays entirely healthy. What do you expect to see?

  25. Q25. Jumbo frames were enabled on the Ceph hosts by setting MTU 9000 on the bonds, but one leaf switch port was left at 1500. Which symptom pattern best matches this?

  26. Q26. Application owners report that a database VM on RBD now sees 40 ms write latency, up from 2 ms. The cluster is HEALTH_OK, no OSD is nearfull, and no recovery is running. Describe the evidence you would collect, how you would isolate the layer at fault, and what you would do.

    A 6-node hyper-converged Proxmox and Ceph cluster with all-NVMe OSDs and a bonded 25 GbE network carrying both public and cluster traffic. The problem appeared the morning after a scheduled switch firmware upgrade. ceph -s is clean, and rados bench from an admin host reports normal throughput with slightly elevated latency.

  27. Q27. You are issuing a cephx key for a Kubernetes CSI provisioner that must create, map, and delete RBD images in the pool kube, and do nothing else. Which capability set is the right shape?

  28. Q28. A compliance requirement states that all storage traffic must be encrypted in transit within the datacentre. Which is the correct Ceph-native answer?

  29. Q29. Two years ago client.admin was copied onto six administrator laptops and three CI runners. Describe how you would return the cluster to a least-privilege position, in order, and state what would break at each step if you got it wrong.

  30. Q30. rbd map fails on a bare-metal host with an error reporting an RBD image feature set mismatch, while the same image attaches without trouble through librbd under QEMU on another host. What is the correct reading?

  31. Q31. A CephFS filesystem with one active MDS and one standby serves a workload of many small files. Users report multi-second stalls listing large directories, while ceph -s stays HEALTH_OK. What is the most likely cause to check and act on first?

  32. Q32. RGW multisite replication is asynchronous, so an object written in one zone can be readable there while not yet present in the other zone, and that is expected behaviour rather than a fault.

  33. Q33. After adding a third RGW gateway behind the load balancer, a fraction of S3 requests began failing with 403 AccessDenied, apparently at random, while the same request succeeds on retry. Describe the evidence you would collect, the likely causes, and the remediation.

    Three radosgw daemons behind a layer 7 load balancer serving a single zone. The two original gateways were deployed 18 months ago by hand; the third was deployed this week through cephadm. Clients use SigV4 signatures with virtual-hosted-style bucket addressing over HTTPS, terminated at the load balancer.

  34. Q34. A single OSD is reporting device health failures but is still up and in. The cluster is at 55 per cent raw utilisation with ample hosts. Which order of operations replaces it with the least risk and the least data movement?

  35. Q35. You want recovery to run faster during a maintenance window on a Tentacle cluster left at defaults. You raise osd_max_backfills and osd_recovery_max_active, but nothing changes. Why?

  36. Q36. Describe how you would take a single OSD host out of service for a two-hour memory upgrade on a size=3 cluster with a host-level failure domain. State which flags you would set and why each one, and what you would verify before and after.

  37. Q37. A cluster has 10 hosts, each with twelve 16 TB HDD OSDs, and every pool is size=3 with a host-level failure domain. Which figure should you hand a capacity planner as space they may actually fill?

  38. Q38. A cluster has hit the full ratio and writes have stopped. An engineer proposes raising the full ratio from 0.95 to 0.98 to restore service while more disks are on order. What is the correct assessment?

  39. Q39. A rados bench result of 2 GB/s demonstrates that the cluster can comfortably serve a database VM whose workload is 4 KiB synchronous writes at queue depth 1.

  40. Q40. A cluster takes hourly RBD snapshots retained for seven days, runs every pool at size=3 across three racks, and has versioning enabled on every RGW bucket. Which failure does this combination NOT protect against?

  41. Q41. You back up a 4 TB RBD image nightly using incremental exports. Which sequence is correct and safe?

  42. Q42. The primary datacentre is destroyed. You have an off-site RGW multisite secondary in a second datacentre, nightly incremental RBD exports to object storage in a third location, and deduplicating file backups of CephFS. Executives want a restoration timeline. Describe the evidence you would gather, the recovery sequence, and what you would keep as a fallback.

    A 24-host production cluster served 400 RBD virtual machine disks, a 90 TB CephFS home directory tree, and 200 TB of RGW objects. The DR site has hardware for a 12-host cluster, sized for the RBD and CephFS workloads but not for a full copy of the RGW data. The last successful DR drill was 14 months ago.

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