Strimzi — Run Apache Kafka on Kubernetes
Strimzi provides Kubernetes operators to deploy, manage, and scale Apache Kafka clusters natively on any Kubernetes distribution.
What it is
Strimzi provides Kubernetes operators that deploy, manage, and scale Apache Kafka clusters natively on any Kubernetes distribution. Instead of manually configuring Kafka brokers, ZooKeeper, and Connect workers, you declare your desired cluster state in a Kubernetes custom resource and Strimzi handles provisioning, configuration, upgrades, and scaling.
Strimzi targets platform engineering teams running Kubernetes who want Kafka as a managed service within their own infrastructure. It supports Kafka, Kafka Connect, Kafka MirrorMaker, and Kafka Bridge through dedicated operators.
Why it saves time or tokens
Deploying Kafka manually on Kubernetes requires writing StatefulSets, PersistentVolumeClaims, ConfigMaps, and Services for each component. Strimzi replaces all of this with a single custom resource definition. Rolling upgrades, certificate rotation, and scaling happen automatically. When AI assistants generate Kafka deployment configs, targeting Strimzi CRDs produces shorter, more maintainable output than raw Kubernetes manifests.
How to use
- Install the Strimzi operator:
kubectl apply -f https://strimzi.io/install/latest - Create a Kafka custom resource defining your cluster size and configuration
- Apply the resource and Strimzi provisions the full Kafka cluster
Example
apiVersion: kafka.strimzi.io/v1beta2
kind: Kafka
metadata:
name: production-cluster
spec:
kafka:
version: 3.7.0
replicas: 3
listeners:
- name: plain
port: 9092
type: internal
tls: false
storage:
type: persistent-claim
size: 100Gi
zookeeper:
replicas: 3
storage:
type: persistent-claim
size: 50Gi
entityOperator:
topicOperator: {}
userOperator: {}
| Component | Strimzi Operator |
|---|---|
| Kafka brokers | Kafka operator |
| ZooKeeper | ZooKeeper operator |
| Topics | Topic operator (CRD) |
| Users/ACLs | User operator (CRD) |
| Connectors | Kafka Connect operator |
Related on TokRepo
- AI tools for devops — Kubernetes and infrastructure tools on TokRepo
- AI tools for automation — deployment automation tools
Common pitfalls
- Strimzi requires persistent storage; ensure your Kubernetes cluster has a StorageClass configured before deploying
- The operator needs cluster-level RBAC permissions; restricted namespaces may block installation
- Kafka version upgrades through Strimzi are rolling but require compatible client versions; test consumer/producer compatibility before upgrading
Frequently Asked Questions
Yes. Strimzi supports KRaft mode starting from recent versions. KRaft replaces ZooKeeper with Kafka's built-in Raft consensus protocol, simplifying the deployment. Check the Strimzi documentation for the minimum Kafka version required for KRaft support and any feature limitations.
Strimzi performs rolling upgrades automatically. When you update the Kafka version in the custom resource, the operator upgrades brokers one at a time, waiting for each to rejoin the cluster before proceeding. This ensures zero downtime during version upgrades.
Yes. Strimzi includes a KafkaConnect custom resource that deploys and manages Kafka Connect clusters. You can define connector configurations as KafkaConnector custom resources, and the operator handles deployment, scaling, and status monitoring of your connectors.
Strimzi works on any Kubernetes distribution including EKS, GKE, AKS, OpenShift, k3s, and self-managed clusters. It uses standard Kubernetes APIs and custom resources. OpenShift users get additional benefits from Strimzi's built-in support for OpenShift Routes and security contexts.
Strimzi exports Prometheus metrics from all Kafka components by default. You configure metric scraping in the Kafka custom resource. Strimzi also provides example Grafana dashboards for broker health, topic throughput, consumer lag, and ZooKeeper status. Integrate with your existing Prometheus stack for full observability.
Citations (3)
- Strimzi GitHub— Strimzi provides Kubernetes operators for Apache Kafka
- Strimzi Docs— Strimzi is a CNCF sandbox project
- Apache Kafka— Apache Kafka is a distributed event streaming platform
Related on TokRepo
Discussion
Related Assets
Conda — Cross-Platform Package and Environment Manager
Install, update, and manage packages and isolated environments for Python, R, C/C++, and hundreds of other languages from a single tool.
Sphinx — Python Documentation Generator
Generate professional documentation from reStructuredText and Markdown with cross-references, API autodoc, and multiple output formats.
Neutralinojs — Lightweight Cross-Platform Desktop Apps
Build desktop applications with HTML, CSS, and JavaScript using a tiny native runtime instead of bundling Chromium.