一、问题描述
当我多次格式化文件系统时,如
[root@master]# cd /usr/local/hadoop/etc/bin/hdfs namenode -format
会出现datanode无法启动
二、问题产生原因
当我们执行文件系统格式化时,会在namenode数据文件夹(即配置文件中dfs.namenode.name.dir在本地系统的路径)中保存一个current/VERSION文件,记录clusterID,标识了所格式化的 namenode的版本。如果我们频繁的格式化namenode,那么datanode中保存(即配置文件中dfs.data.dir在本地系统的路径)的current/VERSION文件只是你第一次格式化时保存的namenode的ID,因此就会造成datanode与namenode之间的 id 不一致
三、解决问题的方法
1、每次格式化前删除临时文件内的所有内容,即将core-site.xml配置的hadoop.tmp.dir对应目录下全部删除再进行格式化。