There are three ways to run the Kafka Operator:

  1. Helm managed Docker container deployment on Kubernetes

  2. As a Docker container

  3. Build from source.


Helm allows you to download and deploy Stackable operators on Kubernetes and is by far the easiest installation method. First ensure that you have installed the Stackable Operators Helm repository:

$ helm repo add stackable

Then install the Stackable Operator for Apache Kafka

$ helm install kafka-operator stackable/kafka-operator

Helm will deploy the operator in a Kubernetes container and apply the CRDs for the Apache Kafka service. You’re now ready to deploy Apache Kafka in Kubernetes.


This Operator is published as a Docker image:

When installing manually with Docker you will need to install the Stackable CRDs for Apache Kafka in your Kubernetes environment. These are available on the Stackable GitHub repository for this operator.

$ sudo kubectl apply -f kafkacluster.crd.yaml

To run it straight from Docker you can use this command:

docker run \
    --name kafka-operator \
    --network host \
    --env KUBECONFIG=/home/stackable/.kube/config \
    --mount type=bind,source="$HOME/.kube/config",target="/home/stackable/.kube/config" \

Building the operator from source

This operator is written in Rust and is developed against the latest stable Rust release (1.56 at the time of writing).

cargo build