* [Topics](/en/topics "Topics")
* [Open source](/en/topics/open-source "Open source")
* Why run Apache Kafka on Kubernetes?
Why run Apache Kafka on Kubernetes?
===================================
Published  October 10, 2022•*3*-minute read
Copy URL
Jump to section
---------------
OverviewWhy run on Kubernetes? Making it workRight solutions
Overview
--------
Deploying Apache Kafka on a container orchestration platform like Kubernetes allows event-driven applications to be automated, scaled, and deployed anywhere. In short, Kubernetes magnifies the inherent flexibility of apps built on Apache Kafka.
Enterprise IT is increasingly adopting [microservices](/en/topics/microservices) and [cloud-native development](/en/topics/cloud-native-apps), resulting in distributed systems populated by [event-driven applications (EDA)](/en/topics/integration/what-is-event-driven-architecture). In this dynamic development environment, many digital leaders are utilizing [Apache Kafka](/en/topics/integration/what-is-apache-kafka) and combining it with [Kubernetes](/en/topics/containers/what-is-kubernetes).
Apache Kafka enables users to view and analyze a business in real time, and react quickly to continuously changing market situations. In addition, Apache Kafka is an excellent option for establishing and maintaining real-time connectivity with internal stakeholders and external partners, suppliers and customers.
Kafka Streams—a capability within Apache Kafka that can be added to any application—enables simple and powerful stream processing of Kafka events. This processing and analysis of monumental quantities of data, on the fly, continuously and concurrently, is where Apache Kafka is truly differentiated from other messaging alternatives. Apache Kafka permits users to aggregate, transform, enrich, and organize events for in-line, real-time analysis, rather than waiting for big data machinery to crunch the numbers. This makes Apache Kafka vital for any application requiring immediate responses to real-time data.
Apache Kafka is an ideal foundation for cloud-native development. Cloud-native applications are event driven, and Apache Kafka is the optimal backbone to manage events. Distributed streaming, real time processing, high scalability—all these core event-driven capabilities are enabled by Apache Kafka.
[Serverless architecture](/en/topics/cloud-native-apps/what-is-serverless), the next step after cloud native is also event based and is enabled by Apache Kafka. Developers can rely on Apache Kafka on Kubernetes to provide scalable serverless notifications, inter-process communications, and visibility of serverless functions.
Why run Apache Kafka on Kubernetes?
-----------------------------------
Apache Kafka is frequently deployed on the Kubernetes container management system, which is used to automate deployment, scaling, and operation of [containers](/en/topics/containers) across clusters of hosts. Apache Kafka on Kubernetes goes hand-in-hand with cloud-native development, the next generation of application development. Cloud-native applications are independent, loosely coupled, and distributed services that deliver high scalability via the cloud. In the same way, the event-driven applications built on Kafka are loosely coupled and designed to scale across a distributed [hybrid cloud environment](/en/topics/cloud-computing/what-is-hybrid-cloud).
A key benefit for operations teams of running Apache Kafka on Kubernetes is infrastructure abstraction: it can be configured once and run everywhere. Operations teams in the modern age typically manage diverse arrays of on premises and cloud resources, and Kubernetes allows them to treat these assets as pools of compute resources to which they can allocate their software resources, including Apache Kafka. Furthermore, this same Kubernetes layer allows a single environment for managing all of their Apache Kafka instances.
The inherent scalability of Kubernetes is a natural complement to Apache Kafka. Kubernetes allows applications to scale resources up and down with a simple command, or scale automatically based on usage, to make the most economical use of computing, networking, and storage resources. Kubernetes also offers Apache Kafka the portability to span across on-premises and public, private, or hybrid clouds, and use different operating systems
Red Hat resources
-----------------
[Keep reading](/en/resources "Keep reading")
Strimzi: Making Apache Kafka work on Kubernetes
-----------------------------------------------
Operating Apache Kafka manually is a complex endeavor that requires excessive configuration of many components. Running Apache Kafka on bare metal (or virtual machines, for that matter) is complicated. Deploying, monitoring, updating, and rolling back the nodes is extremely complicated and difficult.
Solving this complexity is where the [Strimzi open source project](https://strimzi.io/) enters the picture. Strimzi uses operators to deploy Apache Kafka configurations smoothly and seamlessly. [Operators](https://www.openshift.com/learn/topics/operators), the state of the art facility for deploying and managing applications on Kubernetes, provide development flexibility because they abstract at an infrastructure level, allowing developers to deploy applications without much information about the infrastructure. The developer doesn't need to know the technicalities—such as how many machines or what type of hardware—because operators automatically provision the infrastructure and manage all the details.
Strimzi offers the benefits of [Infrastructure as Code (IaC)](/en/topics/automation/what-is-infrastructure-as-code-iac), in that the developer can easily write a code-like instruction manual to define the infrastructure, and Strimzi will execute these instructions perfectly. Strimzi can even simplify the deployment of Apache Kafka in [high availability](/en/topics/linux/what-is-high-availability) modes, which is, again, otherwise difficult.
The operator in Strimzi supports many security concerns for Apache Kafka, which is another important reason to run Strimzi. Strimzi also automates security for Apache Kafka on Kubernetes, with single sign on, encryption, and authentication, so the developer does not have to spend time implementing basic security features
Finding the right EDA solutions
-------------------------------
Streams for Apache Kafka, part of [Red Hat Integration](/en/products/integration), is a Red Hat enterprise distribution of Apache Kafka and the Strimzi project. Much of the extra value that streams for Apache Kafka brings to Apache Kafka is focused on the use of Apache Kafka on Kubernetes, or [Red Hat OpenShift](/en/technologies/cloud-computing/openshift), which is the Red Hat distribution of Kubernetes.
Streams for Apache Kafka on OpenShift delivers Apache Kafka on Kubernetes to enable enterprise-grade, event-driven architectures that support distributed data streams and stream-processing microservices-based applications. Streams for Apache Kafka is particularly well-suited for high-scale, high-throughput scenarios because the inherent partitioning in Apache Kafka helps address scalability requirements.
Recommended for you
E-book
Build an efficient IT foundation for modern business success
------------------------------------------------------------
Read this e-book to review key steps to help in your IT modernization journey and recommendations for getting started. Your download awaits.
[Read the e-book](https://www.redhat.com/en/engage/build-an-efficient-it-foundation-ebook?percmp=RHCTG0250000455234)
Recommended for you
Red Hat Certified OpenShift Administrator exam
----------------------------------------------
The Red Hat Certified OpenShift Administrator exam (EX280) tests the knowledge, skills, and ability to create, configure, and manage a cloud application platform using Red Hat OpenShift Container Platform.
[View exam](https://www.redhat.com/en/services/training/red-hat-certified-openshift-administrator-exam?percmp=RHCTG0250000455236)
Keep reading
------------
### What is Istio?
Find out more about Istio, an open source service mesh that controls how microservices share data with one another.
[Read the article](/en/topics/microservices/what-is-istio "article | What is Istio?")
### What is CentOS Stream?
CentOS Stream is a Linux® development platform where open source community members can contribute to Red Hat® Enterprise Linux in tandem with Red Hat developers.
[Read the article](/en/topics/linux/what-is-centos-stream "product article | what is centos stream")
### What is KVM?
Kernel-based virtual machines (KVM) are an open source virtualization technology that turns Linux into a hypervisor.
[Read the article](/en/topics/virtualization/what-is-KVM "article | what is KVM?")
Open source resources
---------------------
### Featured product
* #### [Red Hat OpenShift](/en/technologies/cloud-computing/openshift)
  A unified application development platform that lets you build, modernize, and deploy applications at scale on your choice of hybrid cloud infrastructure.
[See all products](/en/technologies/all-products "See all products")
### Related content
* Checklist
  [4 key considerations in modernizing industrial controls](/en/resources/considerations-modernizing-industrial-controls-checklist)
* Blog post
  [Red Hat Named a Leader in 2025 Gartner® Magic Quadrant™ for Container Management for the Third Consecutive Year](/en/blog/red-hat-named-leader-2025-container-management)
* Blog post
  [Getting to know Navtez Singh Bal, Vice President & General Manager, India and South Asia](/en/blog/getting-know-navtez-singh-bal-vice-president-general-manager-india-and-south-asia)
* Blog post
  [Zero trust starts here: Validated patterns for confidential container deployment](/en/blog/validated-patterns-confidential-container-deployment)
### Related articles
* [What is a Linux container?](/en/topics/containers/whats-a-linux-container)
* [What is container orchestration?](/en/topics/containers/what-is-container-orchestration)
* [What is Istio?](/en/topics/microservices/what-is-istio)
* [What is CentOS Stream?](/en/topics/linux/what-is-centos-stream)
* [Stateful vs stateless applications](/en/topics/cloud-native-apps/stateful-vs-stateless)
* [What is Kubernetes?](/en/topics/containers/what-is-kubernetes)
* [Red Hat OpenShift on VMware](/en/technologies/cloud-computing/openshift/vmware)
* [What is KVM?](/en/topics/virtualization/what-is-KVM)
* [What is KubeVirt?](/en/topics/virtualization/what-is-kubevirt)
* [Why use Red Hat Ansible Automation Platform with Red Hat OpenShift?](/en/technologies/cloud-computing/openshift/ansible-on-openshift)
* [What is Podman Desktop?](/en/topics/containers/what-is-podman-desktop)
* [What are CentOS replacements?](/en/topics/linux/centos-alternatives)
* [What is CentOS?](/en/topics/linux/what-is-centos)
* [What is Podman?](/en/topics/containers/what-is-podman)
* [What is the Kubernetes Java client?](/en/topics/cloud-computing/what-is-kubernetes-java-client)
* [What are hosted control planes?](/en/topics/containers/what-are-hosted-control-planes)
* [What is kubernetes security?](/en/topics/containers/kubernetes-security)
* [What is Helm?](/en/topics/devops/what-is-helm)
* [What is InstructLab?](/en/topics/ai/what-is-instructlab)
* [What is Argo CD?](/en/topics/devops/what-is-argocd)
* [Red Hat OpenShift for developers](/en/technologies/cloud-computing/openshift/developers)
* [Containers vs VMs](/en/topics/containers/containers-vs-vms)
* [Edge computing with Red Hat OpenShift](/en/technologies/cloud-computing/openshift/edge-computing)
* [What is MicroShift?](/en/topics/edge-computing/microshift)
* [How Kubernetes can help AI/ML](/en/topics/cloud-computing/how-kubernetes-can-help-ai)
* [OpenJDK versus Oracle JDK](/en/topics/application-modernization/openjdk-vs-oracle-jdk)
* [What is Cloud Foundry?](/en/topics/application-modernization/what-is-cloud-foundry)
* [What is Kubeflow?](/en/topics/cloud-computing/what-is-kubeflow)
* [What are microservices?](/en/topics/microservices/what-are-microservices)
* [OpenShift vs. OpenStack: What are the differences?](/en/technologies/cloud-computing/openshift/openshift-vs-openstack)
* [What is container security?](/en/topics/security/container-security)
* [What are sandboxed containers](/en/topics/containers/sandboxed-containers)
* [What is Buildah?](/en/topics/containers/what-is-buildah)
* [Kubernetes vs OpenStack](/en/topics/openstack/kubernetes-vs-openstack)
* [What are validated patterns?](/en/topics/cloud-computing/what-are-validated-patterns)
* [Understanding Ansible, Terraform, Puppet, Chef, and Salt](/en/topics/automation/understanding-ansible-vs-terraform-puppet-chef-and-salt)
* [Ansible vs. Chef: What you need to know](/en/topics/automation/ansible-vs-chef)
* [Ansible vs. Salt: What you need to know](/en/topics/automation/ansible-vs-salt)
* [Kubernetes on AWS: Self-Managed vs. Managed Applications Platforms](/en/topics/containers/kubernetes-on-aws)
* [What is Linux?](/en/topics/linux/what-is-linux)
* [What's the best Linux distro for you?](/en/topics/linux/whats-the-best-linux-distro-for-you)
* [What is an image builder?](/en/topics/linux/what-is-an-image-builder)
* [Ansible vs. Puppet: What you need to know](/en/topics/automation/ansible-vs-puppet)
* [Red Hat OpenShift vs. OKD](/en/topics/containers/red-hat-openshift-okd)
* [Red Hat OpenShift vs. Kubernetes: What's the difference?](/en/technologies/cloud-computing/openshift/red-hat-openshift-kubernetes)
* [What is high availability and disaster recovery for containers?](/en/topics/containers/high-availability-containers)
* [What is Apache Kafka?](/en/topics/integration/what-is-apache-kafka)
* [Spring on Kubernetes with Red Hat OpenShift](/en/technologies/cloud-computing/openshift/spring)
* [Ansible vs. Terraform, clarified](/en/topics/automation/ansible-vs-terraform)
* [What is a golden image?](/en/topics/linux/what-is-a-golden-image)
* [Ansible vs. Red Hat Ansible Automation Platform](/en/technologies/management/ansible/ansible-vs-red-hat-ansible-automation-platform)
* [What are Red Hat OpenShift cloud services?](/en/technologies/cloud-computing/openshift/what-are-red-hat-openshift-cloud-services)
* [VNF and CNF, what’s the difference?](/en/topics/cloud-native-apps/vnf-and-cnf-whats-the-difference)
* [What is a container registry?](/en/topics/cloud-native-apps/what-is-a-container-registry)
* [What is Skopeo?](/en/topics/containers/what-is-skopeo)
* [What are Red Hat OpenShift Operators?](/en/technologies/cloud-computing/openshift/what-are-openshift-operators)
* [Using Helm with Red Hat OpenShift](/en/technologies/cloud-computing/openshift/helm)
* [Kubernetes security best practices](/en/topics/containers/kubernetes-security-best-practices)
* [What is Grafana?](/en/topics/data-services/what-is-grafana)
* [Orchestrating Windows containers on Red Hat OpenShift](/en/technologies/cloud-computing/openshift/windows-containers-on-red-hat-openshift)
* [What is open source software?](/en/topics/open-source/what-is-open-source-software)
* [What is a Kubernetes operator?](/en/topics/containers/what-is-a-kubernetes-operator)
* [Open source vs. proprietary software in vehicles](/en/topics/open-source/open-source-vs-proprietary-software-in-vehicles)
* [High performance computing with Red Hat OpenShift](/en/technologies/cloud-computing/openshift/high-performance-computing)
* [Advantages of Kubernetes-native security](/en/topics/containers/advantages-of-kubernetes-native-security)
* [What is KubeLinter?](/en/topics/containers/what-is-kubelinter)
* [Container and Kubernetes compliance considerations](/en/topics/containers/compliance)
* [Intro to Kubernetes security](/en/topics/containers/intro-kubernetes-security)
* [How microservices support IT integration in healthcare](/en/topics/microservices/microservices-in-healthcare)
* [Kubernetes cluster management](/en/technologies/cloud-computing/openshift/kubernetes-cluster-management)
* [Red Hat OpenShift on IBM IT infrastructure](/en/technologies/cloud-computing/openshift/what-is-red-hat-openshift-on-IBM-IT-infrastructure)
* [Red Hat OpenShift for business leaders](/en/technologies/cloud-computing/openshift/business-leaders)
* [How to deploy Red Hat OpenShift](/en/technologies/cloud-computing/openshift/deploy-red-hat-openshift)
* [Cost management for Kubernetes on Red Hat OpenShift](/en/technologies/cloud-computing/openshift/cost-management)
* [Kubernetes-native Java development with Quarkus](/en/technologies/cloud-computing/openshift/quarkus)
* [What is enterprise Kubernetes?](/en/topics/containers/what-is-enterprise-kubernetes)
* [What is RKT?](/en/topics/containers/what-is-rkt)
* [What makes Red Hat OpenShift the right choice for IT operations?](/en/technologies/cloud-computing/openshift/it-operations)
* [Why choose Red Hat for Kubernetes?](/en/topics/containers/why-choose-red-hat-kubernetes)
* [What makes Red Hat OpenShift the right choice for SAP?](/en/technologies/cloud-computing/openshift/sap)
* [What is Kogito?](/en/topics/automation/what-is-kogito)
* [What is Kubernetes role-based access control (RBAC)](/en/topics/containers/what-kubernetes-role-based-access-control-rbac)
* [What is containerization?](/en/topics/cloud-native-apps/what-is-containerization)
* [What was CoreOS and CoreOS container Linux](/en/technologies/cloud-computing/openshift/what-was-coreos)
* [Learning Kubernetes basics](/en/topics/containers/learning-kubernetes-tutorial)
* [What is service-oriented architecture?](/en/topics/cloud-native-apps/what-is-service-oriented-architecture)
* [What is the Kubernetes API?](/en/topics/containers/what-is-the-kubernetes-api)
* [What is Kubernetes cluster management?](/en/topics/containers/what-is-kubernetes-cluster-management)
* [What is a Kubernetes deployment?](/en/topics/containers/what-is-kubernetes-deployment)
* [Why choose the Red Hat build of Quarkus?](/en/topics/cloud-native-apps/why-choose-red-hat-quarkus)
* [Introduction to Kubernetes architecture](/en/topics/containers/kubernetes-architecture)
* [What is CaaS?](/en/topics/cloud-computing/what-is-caas)
* [Introduction to Kubernetes patterns](/en/topics/cloud-native-apps/introduction-to-kubernetes-patterns)
* [What is a Kubernetes cluster?](/en/topics/containers/what-is-a-kubernetes-cluster)
* [What is Quarkus?](/en/topics/cloud-native-apps/what-is-quarkus)
* [What is Jaeger?](/en/topics/microservices/what-is-jaeger)
* [What is open source?](/en/topics/open-source/what-is-open-source)
* [What is Knative?](/en/topics/microservices/what-is-knative)
* [What is etcd?](/en/topics/containers/what-is-etcd)
* [What is container-native virtualization?](/en/topics/containers/what-is-container-native-virtualization)
* [What is Clair?](/en/topics/containers/what-is-clair)
* [Why choose Red Hat for microservices?](/en/topics/microservices/why-choose-red-hat-microservices)
* [Why choose Red Hat for containers?](/en/topics/containers/why-choose-red-hat-containers)
* [What is Docker?](/en/topics/containers/what-is-docker)
* [What is a Kubernetes pod?](/en/topics/containers/what-is-kubernetes-pod)
[More about this topic](/en/topics/open-source "More about this topic")