explaingit

strimzi/strimzi-kafka-operator

5,805JavaAudience · ops devopsComplexity · 4/5LicenseSetup · hard

TLDR

An open-source Kubernetes operator that automates running Apache Kafka clusters on Kubernetes or OpenShift, handling setup, scaling, and self-repair through configuration files instead of manual low-level steps.

Mindmap

mindmap
  root((Strimzi))
    What it does
      Runs Kafka on Kubernetes
      Automates cluster ops
      Handles scaling and repair
    Deployment options
      Single node testing
      Multi-broker production
      Minikube Kind OKD
    Security
      cosign image signing
      Software bill of materials
    Community
      CNCF incubating project
      Regular video meetings
      GitHub contributions
    Getting started
      Quickstart guides
      Release documentation
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Deploy a production-ready Kafka cluster on Kubernetes with automatic scaling and self-healing without configuring Kafka manually.

USE CASE 2

Set up a local Kafka cluster on Minikube or Kind for development and testing using Strimzi quickstart guides.

USE CASE 3

Declare your entire Kafka cluster configuration as Kubernetes manifests and let Strimzi apply and maintain the desired state.

USE CASE 4

Verify the integrity of Strimzi container images using cosign before deploying to a production cluster.

Tech stack

JavaKubernetesApache KafkaOpenShiftHelm

Getting it running

Difficulty · hard Time to first run · 1h+

Requires a running Kubernetes cluster, Minikube or Kind works for local development but you need to understand Kubernetes basics first.

Use freely for any purpose including commercial use, keep the copyright notice and the Apache license text.

In plain English

Strimzi is an open-source project that simplifies running Apache Kafka on Kubernetes or OpenShift. Kafka is a high-throughput messaging system used by organizations to move data between applications in real time, connecting services and processing event streams at scale. Setting up Kafka manually on Kubernetes requires careful, low-level configuration. Strimzi handles that work through an operator model: it is software that runs inside your Kubernetes cluster, watches your Kafka-related configuration files, and automatically creates, updates, scales, and repairs the cluster according to what you declare. The project supports several deployment configurations, from simple single-node setups for testing to multi-broker production clusters. It is a CNCF incubating project, which means it operates under the Cloud Native Computing Foundation, the same foundation that governs Kubernetes. Community members meet regularly via video call to discuss roadmap items, with meetings rotating times to accommodate different time zones. Security is given explicit attention. Since version 0.38, every container image is signed using cosign, a tool that lets you verify that images came from official Strimzi builds and have not been tampered with. The project also publishes a Software Bill of Materials for each release, a structured inventory of every package and library bundled in the containers. Getting started is documented through quickstart guides covering Minikube, OKD (OpenShift Origin), and Kubernetes Kind, all of which run locally on a developer machine. Full documentation for each release is on the project website. The project is licensed under Apache 2.0 and accepts contributions through GitHub issues and pull requests.

Copy-paste prompts

Prompt 1
Using Strimzi, show me how to write a Kafka custom resource YAML to deploy a 3-broker Kafka cluster on Kubernetes with persistence enabled.
Prompt 2
I'm running Strimzi on Minikube. Walk me through setting up a Kafka topic, a producer, and a consumer to verify the cluster works end to end.
Prompt 3
Help me verify the authenticity of a Strimzi container image using cosign before deploying it to my Kubernetes cluster.
Prompt 4
I need to scale my Strimzi-managed Kafka cluster from 3 brokers to 5. Show me how to update the Kafka custom resource and what to watch in the operator logs.
Prompt 5
Show me how to configure TLS authentication between Kafka clients and a Strimzi-managed Kafka cluster on Kubernetes.
Open on GitHub → Explain another repo

← strimzi on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.