具有高可用性的Namenode与基于zookeeper的领导者选择

时间:2017-09-25 21:39:48

标签: hadoop hdfs apache-zookeeper

我正在阅读Apache Hadoop文档和cloudera文档中的两个不同内容 基于cloudera,我们应该在高可用性模式下设置namenode,即:通过定义主要和次要的namenode,但是基于Hadoop文档,这应该由zookeeper自动处理,它应该在可用的datanode中决定namenode。

任何人都可以解释这个差异以及使用哪个?

1 个答案:

答案 0 :(得分:2)

  

通过定义主要和次要名称节点

有一个"辅助名称节点",但它实际上是一个非常不同的东西,因为它不是备用,并且能够变为活动状态。

没有" vs"。 Namenode HA需要Zookeeper

如果您阅读了Cloudera documentation的更多信息,那么它就不会提及Zookeeper。

  

自动故障转移为HDFS部署添加了两个新组件:ZooKeeper仲裁和ZKFailoverController进程(缩写为ZKFC)。

Cloudera并没有在核心Hadoop功能之上打包很多额外内容(如果有的话)。

关于你的问题......

  

这应该由zookeeper自动处理

如果(手动)配置了HDFS Zookeeper属性,Zookeeper正在运行,并且Active Namenode关闭,则故障转移是自动的。

  

可用的数据节点

该操作与datanodes

无关