Upgrade Confluent Platform

When you upgrade Confluent Platform from one version to another, we recommend that you perform the upgrade process separate from making other changes to your clusters, such as scaling up, changing configuration, or rotating credentials.

Upgrade each Confluent Platform component as below.

  1. In the component CR, update the component image.

    CFK uses the following Confluent Platform component images:

    • confluentinc/cp-server-connect
    • confluentinc/cp-enterprise-control-center
    • confluentinc/cp-server
    • confluentinc/cp-ksqldb-server
    • confluentinc/cp-enterprise-replicator
    • confluentinc/cp-schema-registry
    • confluentinc/cp-zookeeper

    The tag is the Confluent Platform release you want to upgrade to.

    spec:
      image:
        application: <component image>:<tag>
    

    For example, to upgrade Kafka to 7.0.1:

    spec:
      image:
        application: confluentinc/cp-server:7.0.1
    
  2. In the same component CR, update the CFK init container image. The image tag is the version of CFK, 2.2.4:

    spec:
      image:
        init: confluentinc/confluent-init-container:2.2.4
    
  3. Apply any custom setting changes for the version you are upgrading to, using the configOverrides property in the component CR.

    For example, CFK sets the Kafka properties, inter.broker.protocol.version and log.message.format.version, to 2.6. To use the new features introduced in Kafka, you need to update the properties to the corresponding version as described in the Confluent Platform Upgrade Guide. Both properties must be set to the same version.

    For upgrading Kafka to 6.2.0, set the following in the Kafka CR:

    spec:
      configOverrides:
        server:
          - inter.broker.protocol.version=2.8
          - log.message.format.version=2.8
    

    Note that there are certain configurations that cannot be updated on deployed clusters. See Upgrades and updates for this list.

    Alternatively, you can perform this step after the upgrade.

  4. Upgrade the component.

    kubectl apply -f <component CR> --name <namespace>