sravani-revuri opened a new pull request, #11037:
URL: https://github.com/apache/ozone/pull/11037

   ## What changes were proposed in this pull request?
   We are adding three new CLI commands — assessment, dry-run, and recommend — 
that all need the same cluster view. These commands run at client-side and 
fetch datanode usage info via the existing getDatanodeUsageInfo RPC.
   
    
   
   This Jira builds the shared foundation that is a common module that takes 
datanode usage protos,
   
   Responsibilities:
   
   Apply include/exclude filters on the proto list
   Compute cluster average utilization
   Compute upper/lower utilization limits from cluster average and threshold
   Compute each eligible node’s utilization (utilization = (capacity - 
remaining) / capacity) and classify each as source, target, or balanced by 
comparing with the upper/lower limits.
   Accumulate source/target counts and 
totalOverUtilizedBytes/totalUnderUtilizedBytes
   Compute MaxUtilization, MinUtilization
   Compute cluster imbalance and bytes to move
   Build and return ContainerBalancerClusterSnapshot
   The logic should match the way the running balancer uses in 
ContainerBalancerTask.initializeIteration(), so CLI output and actual balancer 
behaviour stay consistent.
   
   Analyzer should return an object(ContainerBalancerClusterSnapshot) 
containing totalEligibleDatanodes count, clusterAvgUtilization, 
clusterCapacityBytes, MaxUtilization, MinUtilization, upperLimit, lowerLimit, 
sourceCount, targetCount, totalOverUtilizedBytes, totalUnderUtilizedBytes, 
bytesToMove, Imbalance (drift), top 5 sourceNodes hostnames, bottom 5 
targetNodes hostnames.
   
   We should also test this analysis.
   
   ## What is the link to the Apache JIRA
   
   https://issues.apache.org/jira/browse/HDDS-16173
   
   ## How was this patch tested?
   
   Written Unit Tests.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


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

Reply via email to