欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

HDFS HA误删namenode后报错Nameservice testCluster has no SecondaryNameNode or High-Availability partner的恢复

程序员文章站 2022-03-03 10:43:29
删除hdfs ha namenode的正常方式是先禁用高可用,今天想试试直接删除其中一个namenode,于是开始操作,结果剩下的NN无法启动。 cm页面报错:“Nameservice testCluster has no SecondaryNameNode or High-Availability ......

删除hdfs ha namenode的正常方式是先禁用高可用,今天想试试直接删除其中一个namenode,于是开始操作,结果剩下的nn无法启动。

cm页面报错:“nameservice testcluster has no secondarynamenode or  high-availability partner”。

解决办法:

  1. hdfs配置里搜索原来的nameservice名(我的是testcluster),删除掉搜索出来的 namenode nameservice 和 quorum journal。
  2. 实例里删除journal node,添加secondarynamenode。
  3. 重启nn,报错“java.io.ioexception: there appears to be a gap in the edit log.  we expected txid 113850025, but got txid 113855934.”看到这个日志相信你已经明白原因了。
  4. 把删除的nn节点目录下的数据全部(也可以按需挑选)覆盖到当前nn节点目录下。(保守起见可以现把本节点目录备份后再删除)
  5. 重启nn,一切正常了。