-
Notifications
You must be signed in to change notification settings - Fork 613
Kafka Client Compatibility
Gary Russell edited this page May 28, 2018
·
15 revisions
Spring Cloud Stream's Kafka binder builds upon Spring Kafka and Spring Integration Kafka libraries. Specifically, Spring Kafka is the core to this foundation, and it is based on the pure java kafka-clients
jar.
The following is the compatibility matrix of Spring cloud Stream and its dependent projects (and broker versions):
Spring Cloud Stream Version | Spring for Apache Kafka Version | Spring Integration for Apache Kafka Version | kafka-clients | Kafka Broker Version |
---|---|---|---|---|
2.0.x | 2.1.x | 3.0.x | 1.1.x, 1.0.x(*) | 1.1.x, 1.0.x, 0.11.0.x(*) |
1.3.x | 1.3.x, 1.2.x, 1.1.x | 2.3.x, 2.2.x, 2.1.x | 0.11.0.x(**), 0.10.2.x | 0.10.x.x or higher |
1.2.x | 1.2.x, 1.1.x | 2.2.x, 2.1.x | 0.10.1.x | 0.10.x.x or higher |
Depending on the selected release-combination, the dependent projects will be referenced transitively when using maven or gradle for version management.
Notes:
-
(*) The 2.0.x Kafka-binder uses the pure java
AdminClient
to provision topics and supports native headers. - The 1.x.x client can communicate with a 0.11.x.x broker (which also supports headers).
- When using with a 0.11.x.x broker, topics can be provisioned, but the number of partitions cannot be automatically adjusted up. To increase the number of topics, you must use the kafka tools instead. The property
spring.cloud.stream.kafka.binder.auto-add-partitions
must befalse
(default). -
(**) To use the 0.11.x.x
kafka-clients
with 1.3.x, you must use thespring-cloud-stream-binder-kafka11
jar (instead ofspring-cloud-stream-binder-kafka
). You must also override certain other jar versions as follows:
Dependency | Version |
---|---|
spring-cloud-stream-binder-kafka11 | 1.3.0.RELEASE or higher |
spring-kafka | 1.3.x, 1.2.x, 1.1.x |
spring-integration-kafka | 2.3.0.RELEASE or higher |
spring-integration-core | 4.3.13.RELEASE or higher |
spring-integration-jmx | 4.3.13.RELEASE or higher |
kafka_2.11 | (same version as kafka-clients) |