// This assembly is included in the following assemblies:
//
// assembly-upgrade.adoc

[id='con-upgrade-sequence-{context}']
= Required upgrade sequence

[role="_abstract"]
To upgrade brokers and clients without downtime, you _must_ complete the Strimzi upgrade procedures in the following order:

. Make sure your Kubernetes cluster version is supported.
+
Strimzi {ProductVersion} requires Kubernetes {KubernetesVersion}.
+
You can xref:con-upgrade-cluster-{context}[upgrade Kubernetes with minimal downtime].

. Make sure you use Strimzi 0.39 or newer and all your Apache Kafka clusters are Kraft-based.
+
ZooKeeper-based Apache Kafka clusters are not supported anymore and need to be migrated to KRaft before upgrading the Cluster Operator or Apache Kafka.

. xref:assembly-upgrade-{context}[Upgrade the Cluster Operator].

. Update the xref:proc-upgrade-kafka-kraft-{context}[Kafka `version` and `metadataVersion`].

NOTE: From Strimzi 0.39, upgrades and downgrades between KRaft-based clusters are supported.   