Agreed that just restarting is probably the easiest way to go. I'm
trying to reason how to do this with a rolling restart without any
downtime at all, and I'm not 100% sure that is safely possible.
Start with A B C up
Reconfigure A to be A B D
Restart A. Quorum is still satisfied.
Take down C. A and B are still up with quorum.
At this point you could bring up D. I need one of the better experts
on the leader election protocol to answer what happens then. B will
not recognize D as a quorum member. If B is leading, D won't get into
the quorum. If A is leading, D will get into the quorum (I think).
Either way, if you then bring down B, A and D should find each other
and be able to form a quorum. Then restart B with A B D and all is
well. The outstanding question in my mind is whether it's safe to have
D try to join when one of the quorum members knows about it but the
On Wed, Apr 18, 2012 at 2:04 AM, Michi Mutsuzaki <[EMAIL PROTECTED]> wrote:
> David, does zookeeper need to be up (i.e. no quorum loss) while you
> update the server list? If not, it's probably the easiest to shut down
> the entire cluster and bring up the new cluster.
> Camille, what's the order of rolling restart that doesn't cause quorum
> loss? Would it cause any issues to have inconsistent server list
> during this process?
> On Tue, Apr 17, 2012 at 7:50 PM, Camille Fournier <[EMAIL PROTECTED]> wrote:
>> Probably a variant on the rolling restart is the right way to go:
>> On Tue, Apr 17, 2012 at 2:48 AM, David Song <[EMAIL PROTECTED]> wrote:
>>> I have three zookeeper servers, such as A/B/C online. But now I want to
>>> replace box C with a new box named D. What's the best way to update the
>>> server group?