Sreeja created HDDS-16174:
-----------------------------

             Summary: Add container balancer assessment command to report 
cluster imbalance
                 Key: HDDS-16174
                 URL: https://issues.apache.org/jira/browse/HDDS-16174
             Project: Apache Ozone
          Issue Type: Sub-task
            Reporter: Sreeja
            Assignee: Sravani Revuri


The users need a way to understand cluster imbalance before starting the 
balancer — without changing anything or getting config suggestions. The 
assessment command answers: how imbalanced is the cluster, which datanodes are 
over/under utilized, and roughly how much data would need to move.

 

Add ozone admin containerbalancer assessment command which fetches datanode 
usage info via the existing getDatanodeUsageInfo RPC, runs the cluster analysis 
from HDDS-16173

and shows a human-readable report. It should provide a simple category label 
(e.g. large cluster,  high imbalance, medium movement ratio) can be derived in 
the CLI from the returned summary from analyzer.
Output example:

 
{panel}
CLUSTER BALANCE ASSESSMENT
 ═════════════════════════════════════════

  Drift:             23.5%  (max utilization 91.2% − min utilization 67.7%)

  Mean Utilization:  78.4%

  Eligible datanodes: 120 datanodes

  Category:          Large cluster, High imbalance, Medium movement ratio

 

 ─── Source Nodes (over-utilized) ─────────────────────

  14 datanodes above threshold

  Top 5:

    dn-worker-017.example.com    91.2%   (+13.2% above mean)

    dn-worker-004.example.com    89.8%   (+11.4% above mean)

    dn-worker-022.example.com    88.1%   (+9.7% above mean)

    dn-worker-011.example.com    87.6%   (+9.2% above mean)

    dn-worker-039.example.com    86.9%   (+8.5% above mean)

 

 ─── Target Nodes (under-utilized) ─────────────────────

  11 datanodes below threshold

  Bottom 5:

    dn-worker-118.example.com    67.7%   (−10.7% below mean)

    dn-worker-119.example.com    68.2%   (−10.2% below mean)

    dn-worker-120.example.com    69.1%   (−9.3% below mean)

    dn-worker-115.example.com    70.4%   (−8.0% below mean)

    dn-worker-116.example.com    71.0%   (−7.4% below mean)

 

 ─── Movement Summary ─────────────────────────

  Total bytes to move:       420 TB

  Movement ratio:            3.4% of cluster capacity

 
{panel}
 

Threshold defaults to 10% from config, with an optional --threshold override. 
Include/exclude datanode lists should also be supported. 

Assessment does not show iteration counts, duration estimates, recommended 
config, or container move details. Those belong to other commands.

This Jira should also introduce the advisor orchestrator 
class(ContainerBalancerAdvisor) with an assess entry point that wires command 
to the shared analyzer class.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to