cruise-control-for-kafka/cruise-control

Cruise-control is the first of its kind to fully automate the dynamic workload rebalance and self-healing of a Kafka cluster. It provides great value to...

View on GitHub ↗Jump to charts ↓

cruise-control-for-kafka/cruise-control has 3k+ stars and 650+ forks on GitHub, is written in Java, and was last pushed on Oct 16, 2026. Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 2 hours ago
Added to GitGenius on September 22nd, 2026
Created on August 15th, 2017
Open Issues & Pull Requests: 293 (+0)
GitHub issues: Enabled
Number of forks: 652
Total Stargazers: 3,047 (+0)
Total Subscribers: 127 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 11.2 days
Mean response time: 128.8 days
90th percentile: 422.0 days
Tracked items: 87

Maintainer activity

2 people did triage or write work on this repository in the last 12 months.

Counts unlabeled, assigned, unassigned, milestoned, demilestoned, locked, unlocked over the last 12 months. These are issue and pull request events that require triage or write permission. Commits and code review are not counted. labeled and renamed are excluded because GitHub issue forms record the issue author as the actor. Figures from October 18, 2026. This count is not comparable across projects: each project's automation decides which of these events a person emits. How this is counted.

How this project is maintained

Roughly one issue in two opened in the past year never receives a reply. 90% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Only 32% of issues opened in the past year have been closed. Three people close 50% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 93
New in 7 days: 2
Closed in 7 days: 1
Avg open age: 694 days
Stale 30+ days: 82
Stale 90+ days: 79

Recent activity

Opened in 7 days: 2
Closed in 7 days: 1
Comments in 7 days: 0
Events in 7 days: 2

Top labels

  • functionality (12)
  • good first issue (9)
  • question (6)
  • robustness (5)
  • usability (3)
  • correctness (2)
  • productivity (2)

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

Cruise Control for Apache Kafka is a cluster management tool that automates dynamic workload rebalancing and self-healing for Apache Kafka clusters.

Cruise Control addresses the operational complexity of running large-scale Kafka clusters where broker failures occur frequently and manual rebalancing becomes a significant overhead. It tracks resource utilization across brokers, topics, and partitions, then generates rebalance proposals that optimize the cluster against multiple competing goals simultaneously. These goals include rack-awareness, resource capacity constraints, replica distribution, leader traffic distribution, and custom objectives defined by operators. The tool continuously monitors the cluster for anomalies such as goal violations, broker failures, metric deviations, disk failures, and slow brokers, automatically triggering self-healing actions when issues are detected.

Cruise Control is designed for operators managing large Kafka deployments where manual intervention at scale becomes impractical. It suits organizations with hundreds of brokers where broker deaths and workload imbalances are routine operational concerns. The tool provides visibility into cluster state including online and offline partitions, replica synchronization status, and logDir health. Beyond rebalancing, it supports administrative operations such as adding or removing brokers, demoting brokers, adjusting replication factors, and performing preferred leader elections.

The project shows sustained development activity with regular updates addressing Kafka compatibility across multiple versions. The codebase maintains comprehensive anomaly detection capabilities that evolve to cover additional failure modes. The tool's multi-goal rebalancing framework is extensible, allowing operators to define and integrate custom optimization objectives alongside built-in goals. Development continues to expand administrative operations available through the tool, broadening its utility for cluster lifecycle management tasks.