Better reporting of total/free usable capacity of the cluster (#15230)

The current code uses approximation using a ratio. The approximation 
can skew if we have multiple pools with different disk capacities.

Replace the algorithm with a simpler one which counts data 
disks and ignore parity disks.
This commit is contained in:
Anis Elleuch
2022-07-06 21:29:49 +01:00
committed by GitHub
parent dd839bf295
commit 8d98282afd
7 changed files with 39 additions and 27 deletions
+2 -2
View File
@@ -1903,12 +1903,12 @@ func getClusterStorageMetrics() *MetricsGroup {
metrics = append(metrics, Metric{
Description: getClusterCapacityUsageBytesMD(),
Value: GetTotalUsableCapacity(storageInfo.Disks, storageInfo),
Value: float64(GetTotalUsableCapacity(storageInfo.Disks, storageInfo)),
})
metrics = append(metrics, Metric{
Description: getClusterCapacityUsageFreeBytesMD(),
Value: GetTotalUsableCapacityFree(storageInfo.Disks, storageInfo),
Value: float64(GetTotalUsableCapacityFree(storageInfo.Disks, storageInfo)),
})
metrics = append(metrics, Metric{