Confluent for Kubernetes Release Notes
Confluent for Kubernetes (CFK) is continuously updated with new features and enhancements. This topic highlights significant new and updated features, bug fixes, and known limitations in each release.
For Confluent Platform and CFK compatibility information, see Confluent Platform.
For CFK image tags by version, see Confluent for Kubernetes image tags.
To learn how to install CFK and Confluent Platform, see Deploy Confluent for Kubernetes and Deploy Confluent Platform using Confluent for Kubernetes.
Note
For the list of security and vulnerability issues fixed in any release, see Security Advisories and Security Release Notes.
[September 25, 2026] Confluent for Kubernetes 3.0.6 Release Notes
Compatibility and container images
CFK 3.0.x lets you deploy and manage Confluent Platform versions 7.2.x to 8.0.x on Kubernetes versions 1.25 to 1.33 (OpenShift 4.12 to 4.20).
The images released in CFK 3.0.6 are:
confluentinc/confluent-operator:0.1263.243confluentinc/confluent-init-container:3.0.6
Breaking changes
There are no breaking changes in this release.
New features
Adds
kubectl confluent block-reconcileandkubectl confluent enable-reconcileplugin commands. See kubectl confluent block-reconcile and kubectl confluent enable-reconcile.
Enhancements
Removes hard-coded
ParallelGCThreads=1orConcGCThreads=1JVM defaults. See Default JVM settings.Enables FIPS on the Kafka broker and applies FIPS JVM settings through
jvm.config.Adds
InternalClientConfigoverride support for the operator’s internal Kafka client. See Disable TLS hostname verification for the Kafka internal client.Checks Schema Registry status directly instead of trusting a cached configuration hash.
Makes the Kafka-to-LDAP TLS client FIPS-aware using a Bouncy Castle FIPS Keystore (BCFKS).
Removes stale multi-region cluster (MRC) bypass-prechecks guidance, a follow-up to the ZooKeeper
chrootfix below.
Bug fixes
Fixed Jolokia configuration options not rendering as a single comma-separated line.
Fixed the default ZooKeeper
chrootto root during KRaft migration for MRC endpoints.Fixed the
KafkaTopiccontroller so it keeps retrying replication factor (RF) fetches after a transient failure, instead of giving up permanently. The bug leftstatus.replicasempty for topics created withspec.replicasunset, and was most noticeable when creating many topics at once through Helm. Broker-side RF was always correct. Only theKafkaTopicstatus was affected.Fixed the Metadata Service (MDS) client
keystorerendering for themtlstype withoutsslClientAuthentication.Fixed the Schema Registry
restConfigbootstrap URL.Fixed
spec.tls.fips.enabled: truenot being applied to the embedded Kafka REST proxy’s Metadata Service (MDS) client TLS configuration, which was always generated asJKSinstead ofBCFKS. Manualkafka.rest.client.ssl.*configuration overrides are no longer needed to run FIPS and RBAC deployments together.Fixed Kafka-to-ZooKeeper TLS connections crash-looping under FIPS mode due to a missing BCFKS keystore or truststore configuration.
Fixed a
java.security.propertiespath typo that silently prevented FIPS enforcement from taking effect.Fixed reconcile errors and a stale cluster phase being hidden in
Kafkastatus. Status, Kubernetes events, and broker logs now surface the actual failure reason and cluster phase instead of generic or missing messages. This helps diagnose and recover from issues faster.Fixed an unnecessary full cluster roll caused by a stale cached read of tracked secret versions.
Fixed a per-role Kafka discovery override issue in Connect, ksqlDB, and
KafkaRestProxy.Fixed the Replicator
mTLSconnector plugin version.Fixed an RBAC name collision between External-DNS and Ingress-Nginx.
Fixed FIPS-prefixed Kafka clients missing
security.providers.Fixed excessive LDAP load caused by each mirror topic independently triggering an OAuth token request. Tokens are now batched and cached, preventing LDAP overload at scale.
Fixed Cluster Linking remote-auth secrets not mounting on Kafka brokers.
Fixed a
Schemaresource that could reportstatus.appState: Createdwithout the schema actually being registered in Schema Registry, following a reconcile interrupted at a specific point. Affected resources now self-heal on the next reconcile.Fixed Kafka custom resource (CR) reconciliation failures caused by TLS secrets (for example,
services.kafkaRestmTLS) that contained onlyJKSorPKCS12material. Only PEM-style secrets were supported.Fixed an operator memory leak caused by idle outbound HTTP connections that were never closed, which could cause gradual memory growth and potential
OOMKilledrestarts. Idle connections now close after a configurable timeout set byCONFLUENT_OPERATOR_HTTP_IDLE_CONN_TIMEOUT, which defaults to 90 seconds. See Deploy CFK with custom environment variables.Fixed the default OpenID Connect (OIDC) session token expiry, increasing it from 90 seconds to 15 minutes.
Fixed TLS handshake errors flooding Control Center Prometheus and Alertmanager logs, caused by Kubernetes health checks against TLS-enabled endpoints. Set
useProcNetPortCheck: trueunderspec.podTemplate.probe.readinessorspec.podTemplate.probe.livenesson theControlCenterCR to switch these health checks to a TLS-free method.Fixed an issue that prevented installing or pinning to a specific, non-latest, CFK version through the OpenShift OperatorHub. Each release now retains a direct upgrade link to its predecessor in the Red Hat operator catalog.
Known limitations
There are no new known limitations in this release.
Deprecations
There are no new deprecations in this release.
[June 23, 2026] Confluent for Kubernetes 3.0.5 Release Notes
Compatibility and container images
CFK 3.0.x lets you deploy and manage Confluent Platform versions 7.2.x to 8.0.x on Kubernetes versions 1.25 to 1.33 (OpenShift 4.12 to 4.20).
The images released in CFK 3.0.5 are:
confluentinc/confluent-operator:0.1263.163confluentinc/confluent-init-container:3.0.5
New features
Adds support for the migration pre-check utility for single-cluster KRaft migrations. See Step 3.2: Enable the ZooKeeper metadata preflight check.
Locks Kafka, ZooKeeper, and KRaftController CRs during KRaft migration to prevent accidental modifications or deletions. See CR lock enforcement.
Supports KRaft migration rollback from the
SETUPandMIGRATEphases (previouslyDUAL-WRITEonly). See Roll Back to ZooKeeper.Adds
kubectl confluent cluster kraft-migrationplugin for managing KRaft migration lifecycle operations: status, finalize, rollback, and CR lock release. See KRaft Migration Plugin Commands.
Enhancements
Validates
configOverrides.serverfor blocklisted keys (for example,zookeeper.connect) before starting KRaft migration, and blocks migration with an actionable error on conflicts.Improves Kafka and KRaft readiness probing to avoid probe-generated connection churn and false mTLS authentication failures from polluting operational metrics.
Masks sensitive credentials in CFK log output through a centralized redaction wrapper, so plain-text credentials are sanitized before reaching any log sink.
Bug fixes
Fixed a multi-region KRaft migration issue where the KRaft controller required a manual override for the
zookeeper.connectconfiguration.Fixed Schema Registry cluster discovery for external-access and multi-region deployments by handling multi-URL endpoints correctly when
schemaRegistryClusterRefis used.Fixed a connector cleanup issue to ensure that CFK deletes connectors even if their creation returned an HTTP 500 error, preventing orphaned connectors from accumulating on the Connect cluster.
Fixed incorrect
advertised.listenersports when multiple user-defined listeners share the same static ornodePortoffset.
Known limitations
The operator can leak memory and
goroutinesover time from idle outbound HTTP connections (to Kafka REST, Metadata Service (MDS), Schema Registry, or an OAuth identity provider) that are never closed. This can affect any deployment. Upgrade to CFK 3.0.6 or later, which adds a configurable idle-connection timeout to fix this. See [September 25, 2026] Confluent for Kubernetes 3.0.6 Release Notes.
Deprecations
There are no new deprecations in this release.
[25 March, 2026] Confluent for Kubernetes 3.0.4 Release Notes
CFK 3.0.4 allows you to deploy and manage Confluent Platform versions from 7.2.x to 8.0.x on Kubernetes versions 1.25 - 1.33 (OpenShift 4.12 - 4.20).
The images released in CFK 3.0.4 are:
confluentinc/confluent-operator:0.1263.124confluentinc/confluent-init-container:3.0.4
For details on installing CFK and Confluent Platform using the above images, see Deploy Confluent for Kubernetes and Deploy Confluent Platform using Confluent for Kubernetes.
Notable fixes
Fixed an issue where custom OAuth listeners failed to validate without JAAS configurations.
Fixed metrics TLS configuration to correctly resolve keystore passwords from Vault-injected files when using
DirectoryPathInContainer.Added support for configuring JMX authentication and access control using CR specifications to secure exposed JMX ports for all Confluent Platform components.
Important
This is a breaking change to secure exposed JMX ports. This affects existing deployments that access JMX ports remotely for metrics queries.
For more information, see JMX Metrics.
For the list of security and vulnerability issues fixed in this release, see Security Advisories and Security Release Notes.
[25 February, 2026] Confluent for Kubernetes 3.0.3 Release Notes
CFK 3.0.3 allows you to deploy and manage Confluent Platform versions from 7.2.x to 8.0.x on Kubernetes versions 1.25 - 1.33 (OpenShift 4.12 - 4.20).
The images released in CFK 3.0.3 are:
confluentinc/confluent-operator:0.1263.105confluentinc/confluent-init-container:3.0.3
For details on installing CFK and Confluent Platform using the above images, see Deploy Confluent for Kubernetes and Deploy Confluent Platform using Confluent for Kubernetes.
Notable fixes
Fixed connector reconciliation for masked sensitive fields in Connect.
Updated CFK’s connector reconciliation logic to properly handle Connect’s credential masking in the REST API, preventing unnecessary connector updates or restarts when sensitive configuration fields are masked.
Fixed file permissions for user-store secret mounts to use
0600permissions.Fixed an issue where the
platform.confluent.io/roll-delay-interval-secondsannotation was ignored when upgrading the operator. This was causing the pods to roll immediately instead of waiting for the configured delay.Added auto reconcile capability for cluster link.
Improved validation for inter-broker protocol (IBP) version and added automatic derivation of IBP for standard Confluent Platform images.
Added
enableExternalInterInstancefield to the SchemaRegistry CRD to enable external inter-instance communication as a first-class API, with backward compatibility for existingconfigOverrides.serverconfiguration.For the list of security and vulnerability issues fixed in this release, see Security Advisories and Security Release Notes.
[8 December, 2025] Confluent for Kubernetes 3.0.2 Release Notes
CFK 3.0.2 allows you to deploy and manage Confluent Platform versions from 7.2.x to 8.0.x on Kubernetes versions 1.25 - 1.33 (OpenShift 4.12 - 4.20).
The images released in CFK 3.0.2 are:
confluentinc/confluent-operator:0.1263.79confluentinc/confluent-init-container:3.0.2
For details on installing CFK and Confluent Platform using the above images, see Deploy Confluent for Kubernetes and Deploy Confluent Platform using Confluent for Kubernetes.
Notable fixes
Fixed issues with renewing certificate authorities (CAs) for auto-generated certificates.
See Manage TLS Certificates for Confluent Platform Using Confluent for Kubernetes.
Added preventive validation in the CFK webhook for Kafka cluster scale-up and scale-down operations.
Removed the inter-broker protocol version in Kafka server properties for KRaft-based clusters.
Improved output of the KafkaRestClass custom resource (CR) status through
kubectl.Fixed an issue in KRaft migration rollback to ZooKeeper where the required
platform.confluent.io/format-cluster-metadata-in-kafkaannotation was not being automatically added to the Kafka CR.Fixed node port collision for Kafka Token and TokenSASL listeners when using mTLS and RBAC in a Multi-Region Cluster (MRC) setup.
Fixed load balancer port collision for Kafka Token and TokenSASL listeners when using mTLS and RBAC in a Multi-Region Cluster (MRC) setup.
Now you can configure container security context for Control Center’s Prometheus and Alertmanager containers.
Fixed an issue where only the Control Center Prometheus load balancer service was created when external access was enabled for both Control Center and Prometheus.
Fixed GnuTLS security failures by falling back to
curlifwgetis unable to retrieve Connect plugins.For the list of security and vulnerability issues fixed in this release, see Security Advisories and Security Release Notes.
[29 September, 2025] Confluent for Kubernetes 3.0.1 Release Notes
CFK 3.0.1 allows you to deploy and manage Confluent Platform versions from 7.2.x to 8.0.x on Kubernetes versions 1.25 - 1.33 (OpenShift 4.12 - 4.18).
The images released in CFK 3.0.1 are:
confluentinc/confluent-operator:0.1263.34confluentinc/confluent-init-container:3.0.1
For details on installing CFK and Confluent Platform using the above images, see Deploy Confluent for Kubernetes and Deploy Confluent Platform using Confluent for Kubernetes.
Notable update
A new Confluent Enterprise license is available for the customer-managed Confluent Platform for Confluent Cloud subscription. This license allows you to use self-managed Confluent Platform components exclusively with Confluent Cloud services.
If you encounter the following error when provisioning a new license, you should upgrade to a CFK version, 2.9.7, 2.10.3, 2.11.3, 3.0.1, or later.
secretRef confluent-license: missing subject or contains invalid subject
Notable fixes
Fixed the empty STATUS in the Schema CRD.
Fixed the issue where OAuth configuration in the SchemaExporter CRD was ignored when exporting schemas to Confluent Cloud.
IPv6 now correctly works for rack aware Kafka setup.
For the list of security and vulnerability issues fixed in this release, see Security Advisories and Security Release Notes.
[13 June, 2025] Confluent for Kubernetes 3.0.0 Release Notes
CFK 3.0.0 allows you to deploy and manage Confluent Platform versions from 7.2.x to 8.0.x on Kubernetes versions 1.25 - 1.33 (OpenShift 4.12 - 4.18).
The images released in CFK 3.0.0 are:
confluentinc/confluent-operator:0.1263.8confluentinc/confluent-init-container:3.0.0
For details on installing CFK and Confluent Platform using the above images, see Deploy Confluent for Kubernetes and Deploy Confluent Platform using Confluent for Kubernetes.
New features and enhancements
CFK 3.0.0 is a major release with the following noteworthy new features and updates.
- Zookeeper deprecation and removal
Starting with Confluent Platform version 8.0, ZooKeeper has been deprecated and is no longer included in Confluent Platform 8.0 and later.
To use CFK 3.0 to deploy and manage Confluent Platform 8.0, migrate your Confluent Platform 7.x deployment to KRaft, first, and then upgrade Confluent Platform to 8.0.
For details about ZooKeeper to KRaft migration, see Migrate a Single Cluster from ZooKeeper to KRaft.
- Confluent Control Center 2.2 support
Confluent Platform 8.0.0 is compatible with Confluent Control Center 2.2.0 and later, which can be deployed on machines on IPv6 network, IPv4 network, or dual-stack with both IPv4 and IPv6.
Confluent Control Center (Legacy) was deprecated and removed from Confluent Platform 8.0.0.
For the notes about upgrading Confluent Control Center (Legacy) to Control Center, see Upgrade Confluent Platform Using Confluent for Kubernetes.
- Passwordless OAuth/OIDC authentication
Support for OpenID Connect (OIDC) authentication and Open Authorization (OAuth) 2.0 authorization has been enhanced with client assertion for Kafka, KRaft, MDS, and Schema Registry.
- mTLS with RBAC brownfield support
Brownfield deployment for using mTLS identities with RBAC authorization is now generally available. You can use CFK to migrate Confluent Platform to enable RBAC with mTLS.
See Configure RBAC for Confluent Platform Using Confluent for Kubernetes.
- Log4j 2 support
CFK 3.0.0 uses Log4j 2 for logging.
With Confluent Platform 8.0, you can only use Log4j 2. For configuring and using Log4j 2, see Configure Log4j 2.
With Confluent Platform 7.x, use the
platform.confluent.io/use-log4j1=trueannotation to enable Log4j. For more information, see Upgrade CFK.Log4j 2 is not backward compatible with Log4j.
- SNI validation
Due to the Jetty 12 upgrade, SNI validation is enabled by default in Confluent Platform for encryption. For disabling SNI validation, see Disable SNI validation.
Known issues
When deploying CFK to Red Hat OpenShift with Red Hat’s Operator Lifecycle Manager using the OperatorHub, you must use OpenShift version 4.9 or higher.
This OpenShift version restriction does not apply when deploying CFK to Red Hat OpenShift in the standard way without using the Red Hat Operator Lifecycle Manager.
When CFK is deployed on an OpenShift cluster with Red Hat’s Operator LIfecycle Manager/OperatorHub, capturing the support bundle for CFK using the command,
kubectl confluent support-bundle --namespace <namespace>, can fail with the following error message:panic: runtime error: index out of range [0] with length 0
If the ksqlDB REST endpoint is using the auto-generated certificates, the ksqlDB deployment that points to Confluent Cloud requires trusting the Let’s Encrypt CA.
For this to work, you must provide a CA bundle through
cacerts.pemthat contains both (1) the Confluent Cloud CA and (2) the self-signed CA to the ksqlDB CR.When TLS is enabled, and when Confluent Control Center (Legacy) uses a different TLS certificate to communicate with MDS or Confluent Cloud Schema Registry, Control Center (Legacy) (used with Confluent Platform 7.x) cannot use an auto-generated TLS certificate to connect to MDS or Confluent Cloud Schema Registry. See Troubleshooting Guide for a workaround.
When deploying the Schema Registry and Kafka CRs simultaneously, Schema Registry could fail because it cannot create topics with a replication factor of 3. It is because the Kafka brokers have not fully started.
The workaround is to delete the Schema Registry deployment and re-deploy once Kafka is fully up.
When deploying an RBAC-enabled Kafka cluster in centralized mode, where another “secondary” Kafka is being used to store RBAC metadata, an error, “License Topic could not be created”, may return on the secondary Kafka cluster.
A periodic Kubernetes TCP probe on ZooKeeper (in Confluent Platform 7.x) causes frequent warning messages “client has closed socket” when warning logs are enabled.
REST Proxy configured with monitoring interceptors is missing the callback handler properties when RBAC is enabled. Interceptor would not work, and you would see an error message in the KafkaRestProxy log.
As a workaround, manually add configuration overrides as shown in the following KafkaRestProxy CR:
configOverrides: server: - confluent.monitoring.interceptor.sasl.login.callback.handler.class=io.confluent.kafka.clients.plugins.auth.token.TokenUserLoginCallbackHandler - consumer.confluent.monitoring.interceptor.sasl.login.callback.handler.class=io.confluent.kafka.clients.plugins.auth.token.TokenUserLoginCallbackHandler - producer.confluent.monitoring.interceptor.sasl.login.callback.handler.class=io.confluent.kafka.clients.plugins.auth.token.TokenUserLoginCallbackHandler
When configuring source-initiated cluster links with CFK where the source cluster has TLS enabled, set the following in the Source mode ClusterLink CR, under the
spec.configssection:local.security.protocol: SSLandlocal.listener.name: <SSL listener name>for mTLS.local.security.protocol: SASL_SSLfor SASL authentication with TLS.
For details about configuring source-initiated Cluster Linking, see Configure the source-initiated cluster link on the source cluster.
The CFK support bundle plugin on Windows systems does not capture all the logs.
As a workaround, specify the
--out-dirflag in thekubectl confluent support-bundlecommand to provide the output location for the support bundle.When you have external access enabled with load balancer type for both Control Center and Prometheus, only
controlcenter-next-gen-prometheus-bootstrap-lbgets created.The workaround is to enable Control Center external access first, and then add Prometheus external access. This will show both Control Center and Prometheus external
controlcenter-next-gen-bootstrap-lbandcontrolcenter-next-gen-prometheus-bootstrap-lbget created.
Known gaps from Confluent Platform 8.0
CFK 3.0 does not support the following Confluent Platform 8.0 functionality:
Kafka authentication mechanisms: Kerberos and SASL/Scram
Known gaps in CFK Blueprints
Confluent for Kubernetes (CFK) Blueprints is deprecated and will be removed in a future release.
CFK Blueprints 3.0 does not support the following CFK functionality:
Internal listener authentication change on the running cluster
A central Confluent Platform cluster serving as the RBAC metadata store for multiple Confluent Platform clusters
The StaticPortBasedRouting and NodePort external access methods
Monitoring multiple Kafka clusters in Confluent Control Center (Legacy)
Configuring and managing KRaft-based clusters
Using OpenID Connect (OIDC) for authentication