状况:
所有namenode都是standby,但是zookeeper启动正常,即ZK服务未生效,不能高可用切换HA
尝试一:手动强制转化某个namenode为active
操作:在某台namenode上,执行 hdfs haadmin -transitionToActive --forcemanual nn1 (nn1是你的某台nameservice-id)
[root@node01 ~]# hdfs haadmin -getServiceState nn1
active
[root@node02 ~]# hdfs haadmin -getServiceState nn2
standby
结果:nn1被成功转为active。但是在stop-dfs.sh后再一次start-dfs.sh后,所有namenode仍然都是standby
结论:果然因该是ZK的问题
尝试二:初始化ZK
操作:在某台namenode上,执行 hdfs zkfc -formatZK
结果:重新 start-dfs.sh后,一切正常
本文记录了一次Hadoop高可用(HA)环境中所有namenode处于standby状态的问题。经过检查,发现Zookeeper服务虽然运行正常,但未能实现HA切换。尝试一通过手动将namenode转换为active状态,但重启后问题依旧。接着,通过初始化Zookeeper服务(hdfszkfc-formatZK)解决了问题,使得在启动后HA功能恢复正常。这表明问题在于Zookeeper配置或状态。
1708

被折叠的 条评论
为什么被折叠?



