我们配置好hadoop的 core-site.xml 和 hdfs-site.xml 这两个文件后,
需要执行 NameNode 的格式化./bin/hdfs namenode -format,
切记,格式化只需要执行成功一次就好了,
执行多次会导致namenode和datanode 的data文件夹下的VERSION中的clusterID=CID-17edbe07-7e11-46de-8d3a-411aa19981b9
不一致,会导致datanode无法启动,报错
java.io.IOException: Incompatible clusterIDs in /usr/local/hadoop/tmp/dfs/data: namenode clusterID = CID-17edbe07-7e11-46de-8d3a-411aa19981b9; datanode clusterID = CID-c8d43866-130f-4bbc-a789-2d481de1d4b0
有两种方法可以解决,第一种方法是删除DataNode的所有资料(及将集群中每个datanode的/hdfs/data/current中的VERSION删掉,然后执行hadoop namenode -format重启集群,错误消失。<推荐>);第二种方法是修改每个DataNode的namespaceID(位于/hdfs/data/current/VERSION文件中)<优先>或修改NameNode的namespaceID(位于/hdfs/name/current/VERSION文件中),使其一致。