zookeeper-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexander Shraer <shra...@yahoo-inc.com>
Subject Re: Dynamic addition of server to a running cluster
Date Wed, 06 Jul 2011 16:55:34 GMT

Sent from mobile

On Jul 6, 2011, at 9:43 AM, "Ted Dunning" <ted.dunning@gmail.com> wrote:

> Alex seems to have nominated me to explain the rolling restart.
> This is a manual process whereby you restart each server, one at a time with
> the new configuration.  Changing configuration to add servers to the cluster
> needs a little bit of thought, but in the absence of server failure during
> the transition is pretty tame.
> There are subtleties possible, but the simplest way to expand from 3 to 5
> servers is to simply reconfigure the 3 to consider themselves part of the
> larger cluster, configure the 2 new servers and then bounce each old server,
> one at a time and then start the two new servers.
> On Tue, Jul 5, 2011 at 5:55 PM, Alexander Shraer <shralex@yahoo-inc.com>wrote:
>> Hi Paul,
>> There's currently no automated way toadd/remove servers. This is ZK-107.
>> I'm currently implementing this feature, but it will take some time till
>> its in. In the meanwhile there is a "rolling restart" method people use,
>> that someone else (Ted?) would explain better than me. The procedure you
>> describe doesnt work - it doesnt affect the quorums usedinternally  by ZK
>> which are determined when a server first starts and also keep in mind that
>> servers can reboot and go back to using the old config file when restarted.
>> Alex
>> Sent from mobile
>> On Jul 5, 2011, at 8:36 PM, "Paul Rimba" <paul.rimba@gmail.com> wrote:
>>> Hey there,
>>> is there any way to dynamically add a new server to a running cluster?
>>> i tried searching on google and i found that this issue has not been
>> fixed.(
>>> https://issues.apache.org/jira/browse/ZOOKEEPER-762)
>>> To my understanding, all the servers in a cluster must have the same
>>> configuration(zoo.cfg).
>>> If a new server wants to join an already running cluster, how does it get
>>> the same configuration from the cluster before appending his own
>>> server.x=host:port:electionport?
>>> and how does every server get the updated configuration? What i did so
>> far
>>> is to upload it a znode, say /config/zoo.cfg and when there is a
>>> change(NodeDatachanged),
>>> every server gets the updated version (is this the right approach?)
>>> thanks in advance

View raw message