Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
Zookeeper, mail # user - Dynamic addition of server to a running cluster


Copy link to this message
-
Re: Dynamic addition of server to a running cluster
Alexander Shraer 2011-07-06, 16:55


Sent from mobile

On Jul 6, 2011, at 9:43 AM, "Ted Dunning" <[EMAIL PROTECTED]> 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 <[EMAIL PROTECTED]>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" <[EMAIL PROTECTED]> 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
>>