spark学习过程中遇到的问题及解决方法

来源:互联网 发布:娜塔莉 波特曼 知乎 编辑:程序博客网 时间:2024/05/19 23:12
之前在学习Hadoop的时候,用./sbin/start-dfs.sh把Hadoop开始的时候,用jps一看,发现没有datanode,也就是说datanode根本没启动起来。看了一下启动日志,错误项出现在这里:

2016-06-23 08:54:10,484 WARN org.apache.hadoop.hdfs.server.common.Storage: java.io.IOException: Incompatible clusterIDs in /usr/local/hadoop/tmp/dfs/data: namenode clusterID = CID-8faf0dee-f3b6-40fb-a2a2-b97b0aaaf384; datanode clusterID = CID-68f835de-be1a-4b67-9a72-bcc1c0f0c3ed

大体意思就是namenode的clusterID跟datanode的clusterID不一致(不是不一样,是没有达成映射关系)。这我就很纳闷了,为什么会出现这种情况。看到其他人的方法,说每次都要把tmp文件夹中的内容清理掉,不过这种方法很危险,如果有一些重要文件的话,它会一下子给清掉的。

后来发现,这个问题其实很简单,为什么namenode和datanode的cluster ID会不对应呢,那是因为我每次启动Hadoop之前都会把namenode格式化一下,其实根本没这个必要,只要格式化一次就行。如果每次都格式化,那么最终的结果是每次都会造成namenode和datanode的cluster ID不对应。


1 0
原创粉丝点击