Docker Image for Kafka 3.1.0 : raihankhanraka/kafka-kraft:2.8.1
Docker Image for Kafka 3.1.0 : raihankhanraka/kafka-kraft:3.0.1
Docker Image for Kafka 3.2.0 : raihankhanraka/kafka-kraft:3.2.0
Build Your own Image:
export DOCKER_USERNAME=<your docker username>
export VERSION=<desired kafka version>
cd Kafka \
&& docker build --build-arg KAFKA_VERSION=$VERSION -t DOCKER_USERNAME/kafka-kraft:$VERSION . \
&& docker push DOCKER_USERNAME/kafka-kraft:$VERSION
Make sure to set these environment variables while deploying kafka.yaml
in kubernetes:
- REPLICAS: should be equal to number of replicas, this will set node roles
controller,broker
in all the kafka nodes. Each node will be acting as both controller and broker. - SERVICE: Kubernetes service which will be used to connect to the kafka nodes (pods).
- NAMESPACE: kubernetes namespace where the pods will be deployed.
- SHARE_DIR : directory where kafka data will be stored (log directory). example -
/var/log/kafka
. Do not set/mnt/kafka
as SHARE_DIR.