1. Build Applications
  2. Kafka Clients

Kafka Compatibility

Kafka client compatibility

StreamNative Cloud is compatible with Apache Kafka version from 0.9 to 3.4. Modern clients will automatically negotiate protocol versions or utilize an earlier protocol version that StreamNative brokers accept.

Note

We recommend always using the latest supported Kafka client version.

LanguageClientStreamNative Tested
JavaApache Kafka Java Client0.9.0.0, 0.10.2.2, 1.1.1, 2.4.1, 2.5.1, 2.6.3, 2.7.2, 2.8.2, 3.0.2, 3.1.2, 3.2.3, 3.3.2, 3.4.0
C/C++librdkafka1.9.2, 2.0.2, 2.1.1
Goconfluent-kafka-goN/A
Pythonconfluent-kafka-python1.9.2, 2.0.2, 2.1.1
Node.jsKafkaJSN/A

Note that the Kafka clients versions that have not been validated by StreamNative might also be compatible with StreamNative Cloud, particularly those based on librdkafka.

Supported Admin APIs (in Java):

  • abortTransaction
  • createPartitions
  • createTopics
  • deleteConsumerGroupOffsets
  • deleteConsumerGroups
  • deleteRecords
  • deleteTopics
  • describeCluster
  • describeConsumerGroups
  • describeProducers
  • describeTopics
  • describeTransactions
  • listConsumerGroupOffsets
  • listConsumerGroups
  • listOffsets
  • listTopics
  • listTransactions
  • metrics

Unsupported Kafka features

StreamNative Cloud does not currently support the following Apache Kafka features:

  • Managing SASL users with Kafka Admin APIs: Use Pulsar Admin instead.
  • Limited support for Topic Configuration: Since the StreamNative Cloud is based on Apache Pulsar, the storage layer differs from Apache Kafka, so the topic config only supports cleanup.policy to set the compact or delete retention policy.
Previous
Overview