Aatirhassanpir commented on PR #9996:
URL: https://github.com/apache/kafka/pull/9996#issuecomment-2608039403

   Title
   [FEATURE] Add client-side Decommission Broker RPC for KIP-500
   
   Repository Version
   Apache Kafka 2.x.x
   
   Key Words / Search Terms
   Decommission Broker, RPC, KIP-500, Kafka Admin Client, Broker Removal, 
Self-managed Kafka
   
   Description
   This feature introduces the client-side implementation of the Decommission 
Broker RPC as part of KIP-500. This API will allow clients to request the 
removal of brokers from a Kafka cluster, ensuring smooth broker lifecycle 
management in self-managed (ZooKeeper-less) Kafka environments. It includes 
methods for decommissioning brokers and the necessary result classes to track 
the operation.
   
   Expected Behavior
   The client should be able to call the decommissionBroker method to 
decommission brokers by their ID.
   The operation should be supported only for self-managed Kafka clusters.
   The method should return a result object (DecommissionBrokerResult) that can 
track the status of the operation via KafkaFuture<Void>.
   The decommissioning process should trigger partition reassignment for the 
removed broker.
   Current Behavior
   Kafka currently does not provide an API for clients to directly decommission 
brokers.
   The broker decommissioning process requires interaction with the cluster, 
and there’s no clear way to manage it from the client side.
   Steps to reproduce (for bug reports)
   Call the existing Admin client API to decommission a broker.
   Observe that no such functionality is available, leading to an error or no 
result.
   Use cases / motivating examples (for feature requests)
   Cluster Scaling: When scaling down a Kafka cluster, it’s essential to 
decommission brokers gracefully without affecting data availability or cluster 
health.
   Self-managed Clusters: This feature is crucial for Kafka clusters that do 
not rely on ZooKeeper and are managed using KIP-500.
   Automated Broker Management: By providing this API, users can automate 
broker decommissioning processes within their operations, making cluster 
management more efficient.


-- 
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: jira-unsubscr...@kafka.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to