Stand-by-namenode 是否也在做 Secondary-namenode 的工作?

Is Stand-by-namenode doing the job of Secondary-namenode also?

朋友,我才知道在hadoop2中我们配置高可用的时候不需要再配置一个secondary-name-node/checkpoint-node/backup-node。使用一种新的机制,可用性由活动和备用名称节点之间共享的编辑提供。

我的问题是,secondary-name-node 的功能是定期将 edits 文件与 fsimage 文件合并,因此在 hadoop1 世界中有 2 个好处 1) 限制 edits 文件的大小和 2) 减少重启时间保持 fsimage 几乎是最新的。

因此,如果启用了高可用性并且不需要辅助名称节点。那么谁来使用 fsimage 进行编辑拼接呢?还是由于某些 architectural/process 更改,现在不需要该步骤。

帮我理解一下。

有两种部署 HDFS HA 的模式(N.B。这是当前的 2.7.1 状态,如果你在这个 post 某个时候 post 2016 年情况可能会发生变化):

对于这两种配置,文档明确指出了您问题的答案:

Note that, in an HA cluster, the Standby NameNode also performs checkpoints of the namespace state, and thus it is not necessary to run a Secondary NameNode, CheckpointNode, or BackupNode in an HA cluster. In fact, to do so would be an error. This also allows one who is reconfiguring a non-HA-enabled HDFS cluster to be HA-enabled to reuse the hardware which they had previously dedicated to the Secondary NameNode.