Cruise Control keeps Kafka broker load balanced by redistributing partitions so brokers carry similar partition, leadership, CPU, memory, and network loads. It replaces impractical manual planning, such as maintaining large spreadsheets, with monitored analysis and proposed reassignment. section 14.1.4
Cruise Control separates measurement, planning, review, and execution:
- Metrics components run as JARs on brokers, measure current load, and write broker measurements to a Kafka topic. section 14.1.4
- The analyzer evaluates measurements against configured goals and creates a proposal for meeting them. section 14.1.4
- Administrators review the proposal and use the executor to perform the reassignment through the REST API or Cruise Control UI. section 14.1.4
- Automatic error detection can analyze and execute corrective changes when configured targets are not being met. section 14.1.4 section 14.4
A safer balancing workflow
When monitoring shows uneven broker load, an administrator runs the analyzer, reviews its proposed partition movement, and then executes the reassignment. The initial workflow should remain manual so operators can control timing and validate the change. Partition movement can create very high load, so execution should avoid periods when Kafka is already operating near its limits. section 14.1.4
Figure 14.2 Cruise Control for Apache Kafka monitors and optimizes the load of a Kafka cluster.
Use the architecture figure to trace how broker metrics become balancing proposals and executed partition movements. section 14.1.4
