|
6 | 6 | = Downgrading Kafka clusters and client applications |
7 | 7 |
|
8 | 8 | [role="_abstract"] |
9 | | -Downgrade a Kafka cluster to an earlier version. |
10 | | -When downgrading a Kafka cluster to a lower version, like moving from {KafkaVersionHigher} to {KafkaVersionLower}, ensure that the metadata version used by the Kafka cluster is a version supported by the Kafka version you want to downgrade to. |
11 | | -The metadata version for the Kafka version you are downgrading from must not be higher than the version you are downgrading to. |
| 9 | +You can downgrade a Kafka cluster to an earlier version only when the metadata format is compatible. |
| 10 | +Kafka permits downgrades only if there are no metadata changes between your current Kafka version and the target version. |
| 11 | +In practice, this means the cluster’s metadata version must be set to a value that the target Kafka version supports, and there must be no intervening metadata changes between the two versions. |
12 | 12 |
|
13 | | -NOTE: Consult the Apache Kafka documentation for information regarding the support and limitations associated with downgrades. |
| 13 | +IMPORTANT: If the cluster is already using the latest metadata version for the current release, you cannot downgrade. |
| 14 | +The downgrade is only possible if there is a metadata format that is valid in both the current and target Kafka versions. |
| 15 | +Consult the Apache Kafka documentation for information on supported metadata version values and downgrade limitations. |
14 | 16 |
|
15 | 17 | .Prerequisites |
16 | 18 |
|
17 | 19 | * The Cluster Operator is up and running. |
18 | 20 | * Before you downgrade the Kafka cluster, check the following for the `Kafka` resource: |
19 | 21 |
|
20 | | -** The `Kafka` custom resource does not contain options that are not supported by the Kafka version being downgraded to. |
21 | | -** `spec.kafka.metadataVersion` is set to a version that is supported by the Kafka version being downgraded to. |
| 22 | +** The `Kafka` custom resource does not include options that are unsupported by the target Kafka version. |
| 23 | +** The target Kafka version supports the metadata version (`spec.kafka.metadataVersion`) you plan to use. |
| 24 | + |
| 25 | +You can verify the current Kafka and metadata version by checking the status of the `Kafka` custom resource. |
22 | 26 |
|
23 | 27 | .Procedure |
24 | 28 |
|
25 | | -. Update the Kafka cluster configuration. |
| 29 | +. Update the Kafka cluster configuration: |
26 | 30 | + |
27 | | -[source,shell,subs=+quotes] |
| 31 | +[source,shell] |
28 | 32 | kubectl edit kafka <kafka_configuration_file> |
29 | 33 |
|
30 | | -. Change the `metadataVersion` version to a version supported by the Kafka version you are downgrading to; leave the `Kafka.spec.kafka.version` unchanged at the _current_ Kafka version. |
| 34 | +. Change the `metadataVersion` version to a value that is supported by both the current Kafka version and the target version. |
| 35 | +The Kafka version must be able to operate with this metadata format. |
| 36 | ++ |
| 37 | +Leave the `Kafka.spec.kafka.version` unchanged at the _current_ Kafka version. |
31 | 38 | + |
32 | 39 | For example, if downgrading from Kafka {KafkaVersionHigher} to {KafkaVersionLower}: |
33 | 40 | + |
|
0 commit comments