kafka-strimzi-operator

Guides deploying, sizing, and performance-testing Apache Kafka on Kubernetes via the Strimzi operator.

Updated Apr 11, 2026
One-click install
npx skills add https://github.com/lurodrisilva/personal-skills --skill kafka-strimzi-operator-lurodrisilva
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: kafka-strimzi-operator
Source: https://github.com/lurodrisilva/personal-skills/tree/main/platform-engineering/kafka-strimzi-operator
Command: npx skills add https://github.com/lurodrisilva/personal-skills --skill kafka-strimzi-operator-lurodrisilva

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Running Apache Kafka on Kubernetes through the Strimzi operator involves dozens of interlocking decisions — KRaft node pool topology, broker resource limits, Cruise Control capacity contracts, listener selection, storage classes, and JVM tuning — where a single mismatch silently corrupts performance-test results or destabilizes the cluster. This Skill encodes twelve non-negotiable rules and a saturation-band sizing methodology so clusters are perf-testable, sizing-defensible, and upgrade-boring. ## Core Features & Use Cases - KRaft-only cluster authoring: Declarative Kafka and KafkaNodePool resources with disjoint controller and broker pools, hard pod anti-affinity, and rack awareness. - Capacity contract enforcement: The exact BrokerCapacity API schema (cpu, inboundNetwork, outboundNetwork regex patterns, per-broker overrides) mirrored 1:1 against KafkaNodePool.spec.resources.limits so Cruise Control rebalances reflect real headroom. - Performance-testing playbook: Listener selection for synthetic load (internal plaintext for headline runs, TLS/SCRAM measured separately), perf-grade storage classes (Premium SSD v2, gp3, hyperdisk), mandatory Grafana panels before firing k6, and a Bronze-to-Platinum+ tier ladder across Kafka's four limiting resources (CPU, network-in, network-out, log disk). - Use Case: Before running an xk6-kafka load test against a hex-scaffold consumer/producer stack, use this Skill to author the cluster manifests, verify quotas are off, confirm metrics are wired, and rank the first saturated resource against established PostgreSQL baselines. ## Quick Start Ask the AI to author a perf-grade Strimzi Kafka cluster with split controller and broker node pools, Cruise Control capacity mirroring, and a k6 load-test plan for your Kubernetes namespace.

Frequently Asked Questions about kafka-strimzi-operator

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I deploy Kafka on Kubernetes with the Strimzi operator?▼

Deploy the Strimzi Cluster Operator via the install/cluster-operator YAML manifests or the oci://quay.io/strimzi-helm/strimzi-kafka-operator Helm chart, then declare one Kafka resource plus separate KafkaNodePool resources for controller and broker roles. Pin the operator version and isolate perf clusters in their own namespace.

How should I configure Cruise Control brokerCapacity in Strimzi?▼

Set cruiseControl.brokerCapacity.cpu equal to KafkaNodePool.spec.resources.limits.cpu, and set inboundNetwork and outboundNetwork to the node's realistic NIC ceiling. The current API supports only cpu, inboundNetwork, outboundNetwork, and per-broker overrides; disk and cpuUtilization fields no longer exist.

Does Strimzi still support ZooKeeper-based Kafka clusters?▼

No. Kafka 4.0+ removed ZooKeeper and Strimzi 0.46+ defaults KafkaNodePools to true, so new clusters must use KRaft mode with a dedicated three-replica controller node pool. ZooKeeper-mode clusters on Strimzi 0.45 or older should migrate to KRaft first.

Which listener type should I use for Kafka load testing on Kubernetes?▼

Use the internal ClusterIP listener with TLS and authentication disabled for headline perf runs, which removes roughly 15-35% TLS and SASL overhead and isolates the broker code path. Measure TLS with SCRAM-SHA-512 separately to quantify security overhead.

Why do Kafka perf test results get silently capped on Strimzi?▼

KafkaUser quotas such as producerByteRate, consumerByteRate, and requestPercentage throttle throughput when left enabled during synthetic load. Disable quotas for perf tests, keep broker requests equal to limits for Guaranteed QoS, and re-enable quotas per tenant afterward.

When should I not use the Strimzi operator for Kafka?▼

Strimzi only applies to Kafka running on Kubernetes; it does not cover Confluent Cloud, Amazon MSK, or on-prem ZooKeeper clusters. Client-library codec optimization and Kafka-versus-Pulsar or Redpanda strategy decisions are also out of scope.