[
https://issues.apache.org/jira/browse/ZOOKEEPER-1080?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13049728#comment-13049728
]
Hari A V commented on ZOOKEEPER-1080:
-------------------------------------
Hi Sammeer,
1: One suggestion is, let the framework maintain the state of the process and
act as StateEngine rather than giving to the user.
For ex:- Let's say Process2 is in Ready state and Leader goes down.
Here it will directly give handle to the user/component as ELECTED_START. In
this case, user needs to maintain the previous status and act upon.
// handle to the user with the present state.
observer.onElectionEvent(eventType);
Suggestion: It will be better to tell the user about the state
transitions like:
>> startAsLeader
>> startAsSlave
>> switchFromSlaveToLeader etc.
2: I think, it would be better to handle the failure exceptions by the f/w and
hide the complexities of state transitions to the user. This will help the
users to think about their process/application specific logics(like how to
perform startInActive action, how to synchronize the process data during
standbyToActive etc.) rather than writing the high availability logics.
- Hari
> Provide a Leader Election framework based on Zookeeper receipe
> --------------------------------------------------------------
>
> Key: ZOOKEEPER-1080
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1080
> Project: ZooKeeper
> Issue Type: New Feature
> Components: contrib
> Affects Versions: 3.3.2
> Reporter: Hari A V
> Attachments: LeaderElectionService.pdf, ZOOKEEPER-1080.patch,
> zkclient-0.1.0.jar, zookeeper-leader-0.0.1.tar.gz
>
>
> Currently Hadoop components such as NameNode and JobTracker are single point
> of failure.
> If Namenode or JobTracker goes down, there service will not be available
> until they are up and running again. If there was a Standby Namenode or
> JobTracker available and ready to serve when Active nodes go down, we could
> have reduced the service down time. Hadoop already provides a Standby
> Namenode implementation which is not fully a "hot" Standby.
> The common problem to be addressed in any such Active-Standby cluster is
> Leader Election and Failure detection. This can be done using Zookeeper as
> mentioned in the Zookeeper recipes.
> http://zookeeper.apache.org/doc/r3.3.3/recipes.html
> +Leader Election Service (LES)+
> Any Node who wants to participate in Leader Election can use this service.
> They should start the service with required configurations. The service will
> notify the nodes whether they should be started as Active or Standby mode.
> Also they intimate any changes in the mode at runtime. All other complexities
> can be handled internally by the LES.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira