我在由三个节点组成的集群上使用 Apache Hadoop-2.7.1
nn1 主名称节点
nn2(第二个名称节点)
dn1(数据节点)
我已经配置了高可用性,并且 nameservice 和 zookeeper 在所有三个节点上都工作
,它作为领导者在 nn2 上启动
首先,我必须提到 nn1 处于活动状态,而 nn2 处于待机状态
当我在 nn1 上杀死名称节点时
,nn2 变为活动状态,因此正在发生自动故障转移
但在以下情况下(我在 nn1 处于活动状态且 nn2 处于待机状态时应用)并且是:
当我关闭 nn1 时(nn1 整个崩溃)
nn2 保持待机并且不会变为活动状态,因此不会发生自动故障转移
日志中有明显错误
Unable to trigger a roll of the active NN(which was nn1 and now it is closed ofcourse)
nn2 和 dn1 上的两个现有日志节点不应该发生自动故障转移
可能的原因是什么?