liveBook · Manning

Cruise Control

As explained in Apache Kafka in Action

Cruise Control is a Kafka ecosystem tool for monitoring cluster load and automating partition reassignment and resource balancing.

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.
figure 14.2.

Use the architecture figure to trace how broker metrics become balancing proposals and executed partition movements. section 14.1.4

How Apache Kafka in Action covers it

How deep it goes
Explains broker metrics, analyzer proposals, executor actions, REST or UI control, and automatic detection, but not configuration syntax.
Examples
Uses spreadsheet-based manual balancing, broker metrics JARs, Kafka measurement topics, analyzer proposals, and executed partition movements.
What it assumes
Assumes Kafka brokers, partitions, leaders, and resource load; teaches the balancing workflow through those operational concepts.
What you can do after
Operate/configure Cruise Control by monitoring broker load, reviewing analyzer proposals, and executing or automating reassignment.
How it connects
Connects Kafka brokers, partitions, leaders, metrics, Kafka topics, REST APIs, monitoring, and automatic failure detection.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Apache Kafka in Action. The section links point to the parts of the book it draws on.