Deploy Confluent for Kubernetes

Deploy Confluent for Kubernetes to your Kubernetes cluster using the Confluent for Kubernetes (CFK) bundle, which contains Helm charts, templates, and scripts for deploying Confluent Platform to your Kubernetes cluster.

Deploy CFK from Confluent’s Helm repository

Step 1: Add the Confluent Helm repository

Add the Confluent Helm repository:

helm repo add confluentinc https://packages.confluent.io/helm

Expected: "confluentinc" has been added to your repositories

Update the repository to fetch the latest charts:

helm repo update

Expected: Update Complete. ⎈Happy Helming!⎈

Step 2: Install CFK

Install CFK using the default configuration. The <namespace> must already exist. If you haven’t created one, see Create a namespace for CFK. Replace <namespace> with the namespace where you want to deploy CFK, for example, confluent:

helm upgrade --install confluent-operator \
  confluentinc/confluent-for-kubernetes \
  --namespace <namespace>

Expected: Release "confluent-operator" does not exist. Installing it now., followed by the message STATUS: deployed.

Step 3: Verify the installation

Check that the CFK pod is running:

kubectl get pods -n <namespace>

Expected: The confluent-operator pod shows STATUS as Running and READY as 1/1.

Note

If you want CFK to deploy a KRaft-based cluster with the data recovery option, you need to specify the additional kRaftEnabled flag in the helm upgrade command. For the steps to deploy CFK with the data recovery feature, see Deploy CFK with KRaft data recovery option.

Deploy CFK using the download bundle

Step 1: Download and unpack the bundle

Download the CFK bundle. Replace <version> with the CFK version you want to install, for example, 3.3.0:

curl -O https://packages.confluent.io/bundle/cfk/confluent-for-kubernetes-<version>.tar.gz

Expected: The confluent-for-kubernetes-<version>.tar.gz file is downloaded to your current directory.

Unpack the downloaded bundle:

tar -xzf confluent-for-kubernetes-<version>.tar.gz

Expected: A directory named confluent-for-kubernetes-<version>-<build-id> is created in your current directory, for example, confluent-for-kubernetes-3.3.0-20260709151700.

Step 2: Install CFK from the bundle

Change to the helm sub-directory of the unpacked bundle:

cd confluent-for-kubernetes-*/helm

Install CFK. The <namespace> must already exist. If you haven’t created one, see Create a namespace for CFK.

helm upgrade --install confluent-operator \
  ./confluent-for-kubernetes \
  --namespace <namespace>

Expected: Release "confluent-operator" does not exist. Installing it now., followed by the message STATUS: deployed.

Step 3: Verify the installation

Check that the CFK pod is running:

kubectl get pods -n <namespace>

Expected: The confluent-operator pod shows STATUS as Running and READY as 1/1.

Deploy CFK using OpenShift OperatorHub

You can use the OpenShift OperatorHub web console to deploy CFK on OpenShift clusters as described in Adding Operators to a cluster.

The configuration options are limited when you install CFK in OperatorHub where the Subscription object deploys CFK. There are a few deployment settings which you can override permanently in the Subscription object, and you can change most other properties of CFK by editing the ClusterServiceVersion. The changes to the ClusterServiceVersion are temporary and are lost when a new version of CFK is available in Operator Lifecycle Manager (OLM).

When installing CFK operator using OperatorHub, you can only customize for namespaced deployment. Other custom parameters such as license key are not supported when using the OperatorHub.