FYI - in Ted's scenario your application will most likely not be
effected (if that's what you mean by "start a round of consensus").
From your app's perspective your ZK clients will get disconnected from
one server and reconnected to another (as the server it is connected to
is restarted with the new config). If you are using something like our
standard recipes, say leadership election, your ephemeral znodes and
watches are uneffected - you don't see a new leadership election,
everything continues as normal.
Actually you could shut down the entire ZK cluster and restart it, your
ZK clients should be uneffected - they will reconnect to a server
automatically when the cluster comes up and all ephemeral znodes and
watches are maintained as they were prior to the restart.
Hope this helps.
Avinash Lakshman wrote:
I would prefer not restarting. Start/Stop the new/old process and then start
a round of consensus for adding/removing a machine. I guess if one can do
that then there is stopping of process required. Am I missing something
On Thu, Nov 5, 2009 at 11:14 AM, Ted Dunning <ted.dunn...@gmail.com> wrote:
It is pretty easy to do by hand and is pretty easy to script (it was for
The process for adding is
a) configure and start a new node
b) re-configure and restart each existing node in turn to know about the
you now have a larger cluster.
To drop a node,
a) reconfigure and restart each surviving node
b) kill the node(s) that is(are) leaving
you now have a smaller cluster.
On Thu, Nov 5, 2009 at 11:02 AM, Avinash Lakshman <
Is it possible to remove nodes and add nodes dynamically to the ZK
via API? Any plans in the future to do this?
Ted Dunning, CTO