原因分析:
1、重复格式化会重置namenode的识别ID(clusterID和blockpoolID),这样,但datanode的ID不变,无法得到namenode的确认就不会启动了,
2、重复格式化后,有了对hdfs的新增操作之后,edits就会变化,也就不再是格式化之前能识别的那一版日志了,
基于以上两点原因:
1、重复格式化之后,如有对系统做了新增操作,那么只能用namenode的clusterID覆盖datanode的clusterID,否则不能识别日志,
2、重复格式化之后,如没有任何操作,可以尝试datanode的clusterID覆盖namenode的clusterID,工作量会小一点,
默认情况下
namenode的clusterID写在/tmp/hadoop-root/dfs/name/current/VERSION文件中
datanode的clusterID写在/tmp/hadoop-root/dfs/data/current/VERSION文件中