- 在shell下输入jps命令启动的守护进程中发现缺少datanode
进入关于datanode的log文件中查看warm信息
ls —表示的该目录下所有文件选择关于datanode的log文件
查看关于报错信息
2017-03-04 00:25:16,682 WARN org.apache.hadoop.hdfs.server.common.Storage: java.io.IOException: Incompatible clusterIDs in /home/1/hadoop/dfs/data: namenode clusterID = CID-865176a1-84b6-41bf-9abf-5bdf950cccb3; datanode clusterID = CID-3ec8c8b7-04c5-4f28-aad7-ccc91b3cb70b
2017-03-04 00:25:16,683 FATAL org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for Block pool (Datanode Uuid
意思已经很明显了是两个id不相等,在网上查了一下,网上说的是格式化,问题依旧没解决,而且这个办法在实际生产中并不科学,下面看一种比较好的解决办法,去修改clusterID让他们的值相等就可以了。- 然后只需要找到版本(version)文件即可,首先我们进入hdfs-site.xml
然后发现关于datanode守护进程的路径
然后将报错信息中clusterID替换version版本文件中的属性 保存最后执行sbin/stop-all.sh命令停止所有进程,再执行sbin/start-all.sh启动所有进程
Datanode成功启动!(但是我又发现namenode没有启动,真的难受)
参考资料http://blog.csdn.net/baidu_19473529/article/details/52813656