For people interested to be able to work with the Jenkins and Nexus into containers, i have created an infra configuration with docker that you can find here:
It this post, i will explain how to be able to use Kraft and why use it.
Kraf is a concensus protocol allowing Kafka to work independently without Zookeeper.
This simplifies the fact there is nore more need of two different services (Kafka and Zookeeper) to share metadata. It also enables kafka fail over control to be almost instant. Thus the effect of kafka start and stop is faster.
The feature began with the version Kafka 2.8 and is enhanced with every new version BUT for the moment (June 2022), this solution is not yet production ready.
Of course this changes a little the infrastructure and the connection method.
With Zookeeper
Without Zookeeper
Client and service configuration
zookeeper.connect=zookeeper:2181
bootstrap.servers=broker:9092
Schema registry configuration
kafkastore.connection.url=zookeeper:2181
kafkastore.bootstrap.servers=broker:9092
Kafka admin tool
kafka-topics –zookeeper zookeeper:2181
kafka-topics –bootstrap-server broker:9092 … –command-config properties to connect to brokers
REST Proxy API
v1
v2 and v3
Get Cluster ID
zookeeper-shell zookeeper:2181 get/cluster/id
kafka-metadata-quorum or view metadata.properties or confluent cluster describe --url http://broker:8090 --output json