天天看点

hadoop多次格式化namenode造成datanode无法启动问题解决

今天在机器上新装了hadoop2.6.0想体验一把新版本特征,安装好后发现启动dfs时datanode老是启动不了

hadoop多次格式化namenode造成datanode无法启动问题解决

查看namenode日志发现以下问题:

hadoop多次格式化namenode造成datanode无法启动问题解决

按日志内容来看,namenode和datanode的clusterID不一致。突然想起来之前格式化了两次namenode,应该是由于namenode多次格式化造成了namenode和datanode的clusterID不一致!每次格式化时,namenode会更新clusterID,但是datanode只会在首次格式化时确定,因此就造成不一致现象。

打开hdfs-site.xml里配置的datanode和namenode对应的目录,分别打开current文件夹里的VERSION,可以看到clusterID项正如日志里记录的一样,确实不一致:

hadoop多次格式化namenode造成datanode无法启动问题解决
hadoop多次格式化namenode造成datanode无法启动问题解决

修改datanode里VERSION文件的clusterID 与namenode里的一致,再重新启动dfs(执行start-dfs.sh)再执行jps命令可以看到datanode已正常启动。

hadoop多次格式化namenode造成datanode无法启动问题解决

继续阅读