Skip to content

v0.10.0.0

Latest
Compare
Choose a tag to compare
@steveniemitz steveniemitz released this 25 Jan 19:08

This release brings a many major new features an enhancements.

  • The scheduler now builds against 0.8.2.2, 0.9+, and 0.10+. It is HIGHLY recommended to use a version of the scheduler built against the same version of kafka that will be launched. This is due to changes over time to the kafka zookeeper layout/APIs.
  • Rolling restarts now wait for replication to catch up after restarting each broker. This can be disabled with the --noWaitForReplication flag to broker restart.
  • The mesos offer management system has been significantly refactored. On versions of mesos that support it (0.25.0+), offers to the framework will be completed suppressed when the cluster is in a "steady state". Additionally, offers that don't match a broker are rejected with a long filter duration. On clusters with large amounts of offers this should significantly decrease the CPU usage on both the mesos master and kafka-mesos scheduler.
  • Reconciliation has been improved, and the default timeout significantly increased to protect against accidentally terminating brokers on a mesos master failover.
  • A new CLI command has been added (as well as REST endpoint) to get all metrics published by a set of brokers: broker metrics

Breaking changes

While we try very hard to preserve backwards compatibility between releases, there are times that breaking changes must be made. This release introduces one, which may impact people who have built tooling around the HTTP API.

  • Methods that mutate state (broker restart, add, delete, etc) no longer accept GET requests, only POST. This is to lock down the scheduler to prevent unintended actions (eg via malicious URLs).

Note: The attached artifacts are built with JDK 1.8 for Kafka 0.9.0.1 and 0.10.1.1.