// Module included in the following assemblies:
//
// assembly-deployment-configuration-kafka.adoc

[id='proc-manual-rolling-update-kafka-{context}']
= Performing a rolling update of a Kafka cluster

This procedure describes how to manually trigger a rolling update of an existing Kafka cluster by using a Kubernetes annotation.

.Prerequisites

* A running Kafka cluster.
* A running Cluster Operator.

.Procedure

. Find the name of the `StatefulSet` that controls the Kafka pods you want to manually update.
+
For example, if your Kafka cluster is named _my-cluster_, the corresponding `StatefulSet` is named _my-cluster-kafka_.

. Annotate the `StatefulSet` resource in Kubernetes. For example, using `kubectl annotate`:
[source,shell,subs=+quotes]
kubectl annotate statefulset _cluster-name_-kafka strimzi.io/manual-rolling-update=true

. Wait for the next reconciliation to occur (every two minutes by default).
A rolling update of all pods within the annotated `StatefulSet` is triggered, as long as the annotation was detected by the reconciliation process.
When the rolling update of all the pods is complete, the annotation is removed from the `StatefulSet`.

.Additional resources

* For more information about deploying the Cluster Operator, see xref:cluster-operator-str[].
* For more information about deploying the Kafka cluster, see xref:deploying-kafka-cluster-str[].

