Hello Richard, The "hdfs zkfc" command used as part of HDFS HA is a Hadoop-specific solution that implements an additional layer of logic on top of a ZooKeeper distributed lock. The additional logic relates to transitioning NameNode processes between active and standby state, and fencing of an old active NameNode in case it still believes itself to be active due to a network partition or other malfunction. The code for this resides in the Hadoop project, not ZooKeeper. It is considered a private implementation detail of Hadoop, not a stable public API, so I recommend against writing code that relies on those classes. It might still be interesting to read the code as inspiration for your own implementation though. If you're interested, take a look at the following spots in the Hadoop source tree:
hadoop-hdfs-project/hadoop-hdfs/src/main/java//org/apache/hadoop/hdfs/tools /DFSZKFailoverController.java hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server /namenode/ha/ hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/ I hope this helps. If you have any follow up questions, I recommend contacting [email protected]. --Chris Nauroth On 4/30/15, 1:33 PM, "Richard Sharpe" <[email protected]> wrote: >Hi folks, > >I have a need for failover in a Zookeeper cluster ... does zkfc do >that generally or is it a Hadoop only thing? > >-- >Regards, >Richard Sharpe >(何以解憂?唯有杜康。--曹操)
