Hi folks,
In my project, we want to perform to update our active Kafka 0.8 cluster to
Kafka 0.8.1.1 without downtime and losing any data. The process (after
reading http://kafka.apache.org/documentation.html#upgrade) looks to me
like this. For each broker in turn:
1. Bring the broker down.
2. Update Kafka to 0.8.1.1 on the broker node.
3. Start the broker.
4. Run preferred-replica-election script to restore broker's leadership for
respective partitions.
5. Wait for the the preferred replica election to complete.
I deem step#5 necessary since preferred replica election is an asynchronous
process. There is a slim chance that bringing other brokers down before the
election is complete would result in all replicas down for some partitions,
so a portion of the incoming data stream would be lost. Is my understanding
of the process correct?
In my project, we want to perform to update our active Kafka 0.8 cluster to
Kafka 0.8.1.1 without downtime and losing any data. The process (after
reading http://kafka.apache.org/documentation.html#upgrade) looks to me
like this. For each broker in turn:
1. Bring the broker down.
2. Update Kafka to 0.8.1.1 on the broker node.
3. Start the broker.
4. Run preferred-replica-election script to restore broker's leadership for
respective partitions.
5. Wait for the the preferred replica election to complete.
I deem step#5 necessary since preferred replica election is an asynchronous
process. There is a slim chance that bringing other brokers down before the
election is complete would result in all replicas down for some partitions,
so a portion of the incoming data stream would be lost. Is my understanding
of the process correct?