[ https://issues.apache.org/jira/browse/KAFKA-5319?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16024047#comment-16024047 ]
Ma Tianchi commented on KAFKA-5319: ----------------------------------- [~mih...@wp.pl]you are right,I am a green hand to use JIRA.I reopen it > Add a tool to make cluster replica and leader balance > ----------------------------------------------------- > > Key: KAFKA-5319 > URL: https://issues.apache.org/jira/browse/KAFKA-5319 > Project: Kafka > Issue Type: Improvement > Components: admin > Affects Versions: 0.10.2.1 > Reporter: Ma Tianchi > > When a new broker is added to cluster,there is not any topics in the new > broker.When we use console command to create a topic without > 'replicaAssignmentOpt',Kafka use AdminUtils.assignReplicasToBrokers to get > replicaAssignment.Even though it is balance at the creating time if the > cluster never change,with more and more brokers added to cluster the replica > balanced will become not well. We also can use 'kafka-reassign-partitions.sh' > to balance ,but the big amount of topics make it not easy.And at the topic > created time , Kafka choose a PreferredReplicaLeader which be put at the > first position of the AR to make leader balance.But the balance will be > destroyed when cluster changed.Using 'kafka-reassign-partitions.sh' to make > partition reassignment may be also destroy the leader balance ,because user > can change the AR of the partition . It may be not balanced , but Kafka > believe cluster leader balance is well with every leaders is the first on at > AR. > So we create a tool to make the number of replicas and number of leaders on > every brokers is balanced.It uses a algorithm to get a balanced replica and > leader reassignment,then uses ReassignPartitionsCommand to real balance the > cluster. > It can be used to make balance when cluster added brokers or cluster is not > balanced .It does not deal with moving replicas of a dead broker to an alive > broker,it only makes replicas and leaders on alive brokers is balanced. -- This message was sent by Atlassian JIRA (v6.3.15#6346)