Info
License: Free — part of the universal collection tier.
Ceph¶
The ceph probe monitors a Ceph cluster via the Ceph REST Management API v1,
reporting cluster health, OSD counts, monitor quorum, capacity and per-pool
I/O statistics.
Quick start¶
# probes.d/10-ceph.yaml — each file under probes.d/ is a YAML array of probes
- name: ceph
type: ceph
params:
endpoint: https://localhost:8443
username: admin
password: ${secret:ceph.password} # OS secret store; inline plaintext is auto-sealed on install
Parameters¶
| Parameter | Must set | Default | Description |
|---|---|---|---|
endpoint |
In practice | https://localhost:8443 |
Base URL of the Manager dashboard / REST API |
username |
Yes | - | Dashboard user |
password |
Yes | - | Dashboard user's password. A secret: reference it with ${secret:…}, ${env:…} or ${file:…} rather than writing it in the file |
verify_tls |
No | true |
Verify the dashboard certificate; false accepts a self-signed one |
interval |
No | 60 |
Seconds between collections |
instance_name |
No | - | Stable identity override for this cluster |
Metrics¶
| Metric | Unit | Description |
|---|---|---|
senhub.ceph.up |
1 | 1 when the Ceph REST API is reachable and authentication succeeds |
ceph.health.status |
1 | Cluster health: 2 = HEALTH_OK, 1 = HEALTH_WARN, 0 = HEALTH_ERR |
ceph.cluster.capacity |
By | Raw cluster storage capacity |
ceph.cluster.used |
By | Raw storage space in use |
ceph.osd.count |
{osd} | Total number of OSDs in the cluster |
ceph.osd.up |
{osd} | OSDs currently in the up state |
ceph.osd.in |
{osd} | OSDs currently in the in state (participating in data placement) |
ceph.monitor.quorum.count |
{monitor} | Number of monitors participating in the quorum |
ceph.pool.rd_ops |
{read} | Read operations per pool (tagged with pool) |
ceph.pool.wr_ops |
{write} | Write operations per pool |
Operational notes¶
- The Ceph Manager Dashboard must be enabled:
ceph mgr module enable dashboard. - The dashboard ships with a self-signed TLS certificate, which the probe rejects by default. Set
verify_tls: falseto accept it in a lab; for production, configure a proper certificate. - The API requires Ceph Nautilus (14+) or newer for the
/api/v1 interface.
Metric reference¶
Every metric this probe can emit. Metric is the OpenTelemetry name the
OTLP, Prometheus and Zabbix outputs derive theirs from. Name is what a
Nagios check and the API metrics= filter match.
PRTG channel is the label PRTG shows, placeholders filled from the
series' tags.
| Metric | Name | PRTG channel | Unit | Description |
|---|---|---|---|---|
senhub.ceph.up |
senhub.ceph.up |
Ceph {instance} Reachability | # | 1 when the Ceph REST API is reachable and authentication succeeds |
ceph.health.status |
ceph.health.status |
Ceph {instance} Health Status | # | Cluster health: 2=HEALTH_OK, 1=HEALTH_WARN, 0=HEALTH_ERR |
ceph.cluster.capacity |
ceph.cluster.capacity |
Ceph {instance} Raw Capacity | B | Total raw cluster capacity in bytes |
ceph.cluster.used |
ceph.cluster.used |
Ceph {instance} Used Capacity | B | Total bytes currently used across the cluster |
ceph.osd.count |
ceph.osd.total |
Ceph {instance} OSD Total | # | Total number of OSDs configured in the cluster |
ceph.osd.in |
ceph.osd.in |
Ceph {instance} OSD In | # | Number of OSDs that are in (participating in the cluster) |
ceph.osd.up |
ceph.osd.up |
Ceph {instance} OSD Up | # | Number of OSDs that are up (running) |
ceph.monitor.count |
ceph.monitor.count |
Ceph {instance} Monitor Count | # | Total number of monitor daemons |
ceph.monitor.quorum.count |
ceph.monitor.quorum_count |
Ceph {instance} Monitor Quorum | # | Number of monitors currently in quorum |
ceph.pool.objects |
ceph.pool.objects |
Ceph {instance} Pool {pool} Objects | # | Number of objects stored in the pool |
ceph.pool.used |
ceph.pool.used |
Ceph {instance} Pool {pool} Used | B | Bytes stored in the pool |
ceph.pool.rd_ops |
ceph.pool.rd_ops |
Ceph {instance} Pool {pool} Read Ops | # | Cumulative read operations on the pool |
ceph.pool.wr_ops |
ceph.pool.wr_ops |
Ceph {instance} Pool {pool} Write Ops | # | Cumulative write operations on the pool |