2.4.1

Latest release in branch 2.4
Released 6 years ago (March 10, 2020)

Software Apache Kafka
Branch 2.4
Confluent
Platinum EoS
January 10, 2023
Confluent
Community EoS
January 10, 2022
Confluent
Standard EoS
January 10, 2022
First official release version 2.4.0
First official release date 6 years ago (December 09, 2019)
Release notes https://dlcdn.apache.org/kafka/2.4.0/RELEASE_NOTES.html
Source code https://github.com/apache/kafka/archive/refs/tags/2.4.1.tar.gz
Documentation https://kafka.apache.org/24/documentation.html
Apache Kafka 2.4 Releases View full list

What Is New in Apache Kafka 2.4

This release brings incremental stability, performance gains, and several key features that streamline operations. It's a solid update focused on making existing systems more robust and easier to manage.

Category Key Changes
New Features Incremental Cooperative Rebalancing, TLS 1.3 support, Java 11 support
Improvements Kafka Connect REST API extensions, better log message formatting, ZooKeeper 3.5.6
Bug Fixes Numerous fixes for Connect, Streams, core stability, and client compatibility
Deprecations Older message format configurations, some ZooKeeper CLI arguments

How does incremental cooperative rebalancing improve consumer groups?

It fundamentally changes how consumer group rebalances work to minimize downtime. Instead of stopping the entire group, members now can continue processing from their current assignments during a rebalance, only giving up partitions that need to be reassigned.

This matters because it drastically reduces the "stop-the-world" effect during scaling events or broker failures. You get a much smoother experience with fewer pauses in data consumption. The protocol is backward compatible and rolls out gradually.

What security enhancements should I know about?

TLS 1.3 is now supported for encrypted communication between clients and brokers, and between brokers themselves. This is a big deal for anyone operating in environments where the latest security protocols are mandated.

In practice, you can configure this by setting ssl.protocol to TLSv1.3 on both clients and brokers. It works alongside the existing TLS 1.2 support, giving you more flexibility for secure deployments.

Are there any changes for Kafka Connect users?

Yes, the REST API for Kafka Connect got some useful extensions. You can now retrieve the configuration for a specific connector directly, which simplifies automation and management scripts.

There were also multiple bug fixes targeting exactly the kind of edge cases that plague complex Connect deployments, like issues with the MirrorMaker connector and timestamp handling. These fixes make running large-scale data pipelines more predictable.

Is my Java version still supported?

Kafka 2.4 adds support for Java 11 (LTS) while maintaining compatibility with Java 8. This is crucial for planning future upgrades as the ecosystem moves toward newer Java versions.

You can run your brokers and clients on either JVM. In practice, we recommend testing your entire stack on Java 11 in a staging environment to catch any dependency issues before switching production.

What got deprecated in this release?

A few older configurations around message formats are now formally deprecated. This includes the log.message.format.version and message.format.version settings for pre-0.11.0 formats.

If you're still running a very old client, you might be relying on these. It's a good time to plan an upgrade for your clients to avoid future compatibility breaks. Some ZooKeeper command-line arguments were also marked for removal.

FAQ

Should I upgrade my production clusters to 2.4 immediately?
Yes, if you need the new features like cooperative rebalancing or TLS 1.3. It's a stable release with many bug fixes. As always, test in a staging environment first to validate your specific workload and client versions.

Does cooperative rebalancing require changes to my consumer code?
No, it's a protocol change on the broker side. Your existing Java consumers will benefit from it automatically without any code modifications when they reconnect to a 2.4+ broker.

Can I mix brokers running 2.4 with older brokers in the same cluster?
For a rolling upgrade, yes. But to enable new features like cooperative rebalancing, all brokers in the cluster must be upgraded to version 2.4 or later.

What is the impact of the ZooKeeper upgrade to 3.5.6?
It's a drop-in replacement that includes bug and security fixes from the ZooKeeper project. You get a more stable foundation for your Kafka cluster with no required operational changes on your part.

I use Kafka Streams. Are there any specific fixes for me?
Absolutely. Several bugs were squashed, including one related to missing source topic metrics and another that could cause an unnecessary rebalance when a state store changed. Your Streams applications should be more robust.

Releases In Branch 2.4

Version Release date
2.4.1 6 years ago
(March 10, 2020)
2.4.0 6 years ago
(December 09, 2019)