Skip to content

Commit e6a2144

Browse files
salieri11vshankar
authored andcommitted
doc: update documentation
Fixes: https://tracker.ceph.com/issues/68931 Signed-off-by: Igor Golikov <[email protected]>
1 parent 1327fc8 commit e6a2144

File tree

3 files changed

+56
-2
lines changed

3 files changed

+56
-2
lines changed

doc/cephfs/mds-config-ref.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
.. _MDS Config Reference:
12
======================
23
MDS Config Reference
34
======================
@@ -65,3 +66,4 @@
6566
.. confval:: mds_min_caps_per_client
6667
.. confval:: mds_symlink_recovery
6768
.. confval:: mds_extraordinary_events_dump_interval
69+
.. confval:: subv_metrics_window_interval

doc/cephfs/metrics.rst

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,40 @@ CephFS exports client metrics as :ref:`Labeled Perf Counters`, which could be us
6666
- Gauge
6767
- Number of bytes written in input/output operations generated by all processes
6868

69+
Subvolume Metrics
70+
-----------------
71+
72+
CephFS exports subvolume metrics as :ref:`Labeled Perf Counters`, which could be used to monitor the subvolume performance. CephFS exports the below subvolume metrics.
73+
Subvolume metrics are aggregated within sliding window of 30 seconds (default value, configurable via the ``subv_metrics_window_interval`` parameter, see :ref:`MDS config reference`).
74+
In large Ceph clusters with tens of thousands of subvolumes, this parameter also helps clean up stale metrics.
75+
When a subvolume’s sliding window becomes empty, it's metrics are removed and not reported as “zero” values, reducing memory usage and computational overhead.
76+
77+
.. list-table:: Subvolume Metrics
78+
:widths: 25 25 75
79+
:header-rows: 1
80+
81+
* - Name
82+
- Type
83+
- Description
84+
* - ``avg_read_iops``
85+
- Gauge
86+
- Average read IOPS (input/output operations per second) over the sliding window.
87+
* - ``avg_read_tp_Bps``
88+
- Gauge
89+
- Average read throughput in bytes per second.
90+
* - ``avg_read_lat_msec``
91+
- Gauge
92+
- Average read latency in milliseconds.
93+
* - ``avg_write_iops``
94+
- Gauge
95+
- Average write IOPS over the sliding window.
96+
* - ``avg_write_tp_Bps``
97+
- Gauge
98+
- Average write throughput in bytes per second.
99+
* - ``avg_write_lat_msec``
100+
- Gauge
101+
- Average write latency in milliseconds.
102+
69103
Getting Metrics
70104
===============
71105

@@ -130,3 +164,21 @@ The metrics could be scraped from the MDS admin socket as well as using the tell
130164
}
131165
}
132166
]
167+
168+
The subvolume metrics are dumped as a part of the same command. The ``mds_subvolume_metrics`` section in the output of ``counter dump`` command displays the metrics for each client as shown below::
169+
170+
"mds_subvolume_metrics": [
171+
{
172+
"labels": {
173+
"fs_name": "a",
174+
"subvolume_path": "/volumes/_nogroup/test_subvolume"
175+
},
176+
"counters": {
177+
"avg_read_iops": 0,
178+
"avg_read_tp_Bps": 11,
179+
"avg_read_lat_msec": 0,
180+
"avg_write_iops": 1564,
181+
"avg_write_tp_Bps": 6408316,
182+
"avg_write_lat_msec": 338
183+
}
184+
}

src/common/options/mds.yaml.in

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1807,8 +1807,8 @@ options:
18071807
type: secs
18081808
level: dev
18091809
desc: subvolume metrics sliding window interval, seconds
1810-
long_desc: interval in seconds to hold values in sliding window for subvolume metrics, in the metrics aggregator
1811-
default: 60
1810+
long_desc: interval in seconds to hold values in sliding window for subvolume metrics
1811+
default: 30
18121812
min: 30
18131813
services:
18141814
- mds

0 commit comments

Comments
 (0)