Skip to main content
RunBook Academy

← All checklists in Ceph

Before deploymentceph-pool-design

Pool Design Checklist

7 items ·3 critical ·4 warn ·0 info

Purpose

Pool settings are chosen once and lived with for years. Some of them - the pool type, and in practice the placement-group count - are painful or impossible to change once data is in, and min_size is the single setting most likely to be wrong in a way that only shows up during an outage. This checklist is run before a pool takes its first write.

Order of work

The list runs in three passes. The durability pass is replicated-or-ec, size-min-size and crush-rule: these three together decide how many failures the pool survives and how many it stays available through, and they have to be decided as a set rather than one at a time. The scale pass is pg-num and quota, which size the pool against the cluster it lives in. The hygiene pass is app-tag and namespaces - the two items that cost nothing now and save an hour of guessing in eighteen months when nobody remembers which pool belongs to which service.

Before you start

Have the workload profile, the durability target the service owner asked for, the OSD count and device classes available, and the existing pool list so the new name fits the convention.

Verification

The pool is ready when every critical item is checked and the settings have been read back from the cluster rather than from the change request. Mark an item N/A rather than leaving it unchecked when it does not apply to this cluster.

Escalation

A min_size of 1 is an availability-over-durability trade. It needs the service owner’s explicit sign-off, in writing.

Critical3 items

  1. ceph osd pool ls detail
  2. ceph osd pool get <pool> all
  3. ceph osd pool get <pool> crush_rule

Warning4 items

  1. ceph osd pool get <pool> pg_num
  2. ceph osd pool get-quota
  3. ceph osd pool get <pool> application_metadata
  4. ceph osd pool ls