[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-1044?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14200862#comment-14200862
 ] 

Jian Fang commented on ZOOKEEPER-1044:
--------------------------------------

Hi, 

I have a use case to dynamically change a role of a peer from observer to 
participant. Here is my scenario.

I run the zookeeper quorum in cloud and some nodes may be terminated by the 
cloud. The lost node could be replaced with a new node after some time. If I 
understand correctly, zookeeper must keep the number of participants to be an 
odd number to avoid a tie condition. For example, assume that I have 3 
participants and 3 observers. If I lost one participant, usually how long could 
zookeeper survive with only two 2 participants? To solve the problem with two 
participants, I am thinking of changing one observer to be a participant to 
keep the number of participants to be 3. Would this be a valid use case for 
zookeeper? 

Since this ticket has already been closed, I like to confirm if this is doable 
in 3.5.0 and what is the API to change the roles programmatically if it is 
doable. 

Thanks in advance. 

> Allow dynamic changes to roles of a peer
> ----------------------------------------
>
>                 Key: ZOOKEEPER-1044
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1044
>             Project: ZooKeeper
>          Issue Type: Sub-task
>          Components: quorum
>    Affects Versions: 3.3.0
>            Reporter: Vishal Kher
>            Assignee: Alexander Shraer
>             Fix For: 3.5.0
>
>
> Requirement: functionality that will reconfigure
> a OBSERVER to become a voting member and vice versa.
> Example of usage:
> 1. Maintain the Quorum size without changing the cluster size - in a 5
> node cluster with 2 observers, I decide to decommission a voting
> member. Then, I would like to configure one of my observers to be a
> follower without any down time.
> 2. Added a new server to the cluster that has better resources than
> one of the voting peers. Make the new node as voting peer and the old
> one as observer.
> 3. Reduce the size of voting member for performance reasons.
> Fix to ZOOKEEPER-107 might automatically give us this functionality.
> It will be good to confirm that, and if needed, highlight work
> that might be needed in addition to ZOOKEEPER-107.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to