[pve-devel] [PATCH storage 2/2] rbd plugin: status: explain why percentage value can be different from Ceph
Fiona Ebner
f.ebner at proxmox.com
Tue May 13 15:31:22 CEST 2025
Signed-off-by: Fiona Ebner <f.ebner at proxmox.com>
---
src/PVE/Storage/RBDPlugin.pm | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/src/PVE/Storage/RBDPlugin.pm b/src/PVE/Storage/RBDPlugin.pm
index 154fa00..b56f8e4 100644
--- a/src/PVE/Storage/RBDPlugin.pm
+++ b/src/PVE/Storage/RBDPlugin.pm
@@ -703,6 +703,12 @@ sub status {
# max_avail -> max available space for data w/o replication in the pool
# stored -> amount of user data w/o replication in the pool
+ # NOTE These values are used because they are most natural from a user perspective.
+ # However, the %USED/percent_used value in Ceph is calculated from values before factoring out
+ # replication, namely 'bytes_used / (bytes_used + avail_raw)'. In certain setups, e.g. with LZ4
+ # compression, this percentage can be noticeably different form the percentage
+ # 'stored / (stored + max_avail)' shown in the Proxmox VE CLI/UI. See also src/mon/PGMap.cc from
+ # the Ceph source code, which also mentions that 'stored' is an approximation.
my $free = $d->{stats}->{max_avail};
my $used = $d->{stats}->{stored};
my $total = $used + $free;
--
2.39.5
More information about the pve-devel
mailing list