[ https://issues.apache.org/jira/browse/ZOOKEEPER-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13013735#comment-13013735 ]
Benjamin Reed commented on ZOOKEEPER-1031: ------------------------------------------ a leader needs to be running on the virtual IP. it just needs to be a machine with an accurate view of the system. obviously the leader has such a view, but so do the followers of the leader. > Introduce virtual cluster IP and start that cluster IP on the host running ZK > leader > ------------------------------------------------------------------------------------ > > Key: ZOOKEEPER-1031 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1031 > Project: ZooKeeper > Issue Type: Wish > Components: leaderElection, quorum > Affects Versions: 3.3.3 > Reporter: Vishal K > Priority: Minor > Fix For: 4.0.0 > > > It would be useful to enable a way to specify a virtual (floating) IP for the > ZK cluster (say in zoo.cfg). The ZK leader will start this IP on one of its > interfaces. If the leadership changes, the cluster IP will be taken over by > the new leader. This IP can be used to identify the ZK leader and send > administrative commands/query to the leader. For example, > - a ZK client can get the list of ZK servers in the configuration by sending > a request to the server running this IP address. The client just needs to > know one IP address. Availability of cluster automatically ensures > availability of > the IP address. > - To reconfigure ZK configuration, a client can send reconfig request to the > server on this IP and keep retrying until the request succeeds or fails. > Implementation issues: > 1. The old ZK leader that has lost leadership should be able to somehow give > up the virtual IP address. Otherwise, it could lead to collisions. One > solution is to self reboot. A system property can be used to specify ways to > unplumb the cluster IP > 2. Cross-platform support. > 3. Refreshing ARP caches -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira