看datanode日志,可以看到下面这句报错原因:
java.io.IOException: Incompatible clusterIDs in /root/hadoop/dfs/data: namenode clusterID = CID-822d4bda-222d-48ef-b3e7-82fb9f7ef163; datanode clusterID = CID-9f6937a2-5a78-480a-b621-0429c2bb5c73
这个问题一般都是因为多次格式化namenode,导致namenode上的clusterID值与DataNode上的clusterID值不一致引起的。
因为每次格式化只会重新生成一个新的clusterID,但不会将新的clusterID覆盖到DataNode上。
因此解决方案就是,复制namenode上新的clusterID替换DataNode上的原有clusterID。