Hi,

I have a running Zookeeper (3.5) cluster where the machines need to be
replaced. I was thinking of just setting the same ID on each new
machine, and then doing a rolling replacement: take down old ID 1,
start new ID 1, let it rejoin the cluster and replicate the state,
then continue with the other replicas.

I'm finding conflicting information on the internet about the safety
of this. The Apache Kafka FAQ says to do exactly this when replacing a
failed Zookeeper replica, and the new machine will just replicate the
state before participating in the quorum. Other places on the internet
say that reusing the ID without also copying over the state directory
will break assumptions that ZAB makes about replicas, with bad (but
nondescript) consequences.

So, is it safe to reuse IDs in the way I described? If not, what's the
suggested procedure for a rolling replacement of all cluster replicas?

Thanks,
- Dave

Reply via email to