ThomasTaketurns opened a new issue, #21299:
URL: https://github.com/apache/pulsar/issues/21299

   ### Search before asking
   
   - [X] I searched in the [issues](https://github.com/apache/pulsar/issues) 
and found nothing similar.
   
   
   ### Version
   
   Pulsar version : 3.0.0
   
   Broker detailed configuration: 
   
   
[brokerconf.txt](https://github.com/apache/pulsar/files/12816895/brokerconf.txt)
   
   
   ### Minimal reproduce step
   
   I have Pulsar running on a K8S cluster with : 
   
   - 2 brokers
   - A single main partition topic with 64 partitions.
   - The load balancing is configured as follow : 
       loadBalancerDebugModeEnabled: "true"
       loadBalancerSheddingIntervalMinutes: "1"
       loadBalancerSheddingGracePeriodMinutes: "1"
       loadBalancerLoadSheddingStrategy: 
"org.apache.pulsar.broker.loadbalance.impl.UniformLoadShedder"
       loadBalancerMsgRateDifferenceShedderThreshold: "1"
       loadBalancerMsgThroughputMultiplierDifferenceShedderThreshold: "1.1"
       maxUnloadPercentage: "0.5"
       loadBalancerAutoBundleSplitEnabled: "true"
       loadBalancerAutoUnloadSplitBundlesEnabled: "true"
       defaultNamespaceBundleSplitAlgorithm: "range_equally_divide"
       loadBalancerNamespaceBundleMaxTopics: "4"
   
   N.B.: I voluntarily set low values for 
loadBalancerMsgRateDifferenceShedderThreshold and 
loadBalancerMsgThroughputMultiplierDifferenceShedderThreshold since for the 
purpose of the test I want the shedding mechanism to trigger as soon as 
possible.
   
   - Horizontal Pod Autoscaler configured on the brokers to trigger when CPU 
reachs some usage.
   
   Bundles are initially evenly shared between the 2 brokers.
   Then I start sending messages to Pulsar topic, the topic has 8 subscriptions.
   At some point, the broker average CPU will reach a threshold and HPAs are 
triggered.
   After some time, I have 8 brokers available, but the shedding mechanism does 
not trigger event though only the 2 initial brokers are working.
   
   
![image](https://github.com/apache/pulsar/assets/127508079/25db655b-7703-4b2b-b48f-526ad4fae422)
   
![image](https://github.com/apache/pulsar/assets/127508079/5a33c684-e3c9-4b50-9e43-726b61632fe3)
   
   
   
   ### What did you expect to see?
   
   I would expect the load manager to redirect bundles from 
taketurns-pulsar-broker-0 and taketurns-pulsar-broker-1 to other available 
brokers.
   
   ### What did you see instead?
   
   I can see the following message in the logs : 
   
   2023-10-05 11:41:46.486 | 2023-10-05T09:41:46,486+0000 [pulsar-web-42-8] 
INFO  org.apache.pulsar.broker.loadbalance.extensions.manager.RedirectManager - 
We don't need to redirect, current load manager class name: 
org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl
   2023-10-05 11:41:46.483 | 2023-10-05T09:41:46,483+0000 [pulsar-web-42-8] 
INFO  org.apache.pulsar.broker.loadbalance.extensions.manager.RedirectManager - 
We don't need to redirect, current load manager class name: 
org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl
   2023-10-05 11:41:46.292 | 2023-10-05T09:41:46,292+0000 [pulsar-web-42-5] 
INFO  org.apache.pulsar.broker.loadbalance.extensions.manager.RedirectManager - 
We don't need to redirect, current load manager class name: 
org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl
   
   
   ### Anything else?
   
   If I unload the namespace manually, topics are reassigned but I still see 
some brokers not being used and the repartition is not evenly done. 
taketurns-pulsar-broker-0 and taketurns-pulsar-broker-1 have been totally 
unloaded and other 6 brokers now have all partitions attached.
   
   ./bin/pulsar-admin namespaces unload taketurns/bench
   
   
![image](https://github.com/apache/pulsar/assets/127508079/895f3252-81a2-4708-9e31-39f605663652)
   
   
   Thanks for the help,
   
   Sincerely,
   
   Thomas
   
   ### Are you willing to submit a PR?
   
   - [ ] I'm willing to submit a PR!


-- 
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]

Reply via email to