027-解决cdh6.2中datanode无法启动问题

952 阅读1分钟

这是坚持技术写作计划(含翻译)的第27篇,定个小目标999,每周最少2篇。

今天安装cdh时遇到hdfs启动失败问题,解决起来倒是不麻烦,简单记录下。

image.png

关键信息 java.io.IOException: Incompatible clusterIDs in /dfs/dn: namenode clusterID = cluster74; datanode clusterID = cluster14 
关键信息,namenode的 clusterID和datanode的不一致。

原因:执行hdfs namenode -format后,current目录会删除并重新生成,其中VERSION文件中的clusterID也会随之变化,而datanode的VERSION文件中的clusterID保持不变,造成两个clusterID不一致。

方案:

  1. 如果是新建的集群,则直接主机目录 /dfs/dn (cdh->hdfs->配置-> dfs.datanode.data.dir )下的current目录下的文件删除 rm -rf /dfs/dn/current/*
  2. 如果集群内有数据,则只改 /dfs/dn/current/VERSION 中的 clusterID=clusterXX  XX为正确的namenode的clusterID

重启datanode即可