第一次搭建HDFS集群时格式化namenode之后,查看日志发现格式化失败,报错:ERROR namenode.FSnamesystem: initialzation failed
背景:公司服务器第一次搭集群,之前这些机器上没有搭过。
在安装HDFS的时候,在master机器上初始化namenode,之后查看日志,发现初始化失败,报错信息:
各种百度,查找问题,各种方法基本上都尝试了,没能找到一个有效的解决办法。后来请教身边大神,发现还是配置文件的问题,解决如下:
把hdfs-site.xml 配置文件中的hdfs://ns1 改为 ns1 (把hdfs:// 删掉)
修改后配置文件:
重新格式化namenode,查看日志,格式化成功!
注意:如果尝试过多次格式化namenode,当启动datanode是可能会出现问题,datanode可能起不来,
原因是:每次进行namenode格式化都会清空namenode文件存放目录下的文件并产生一个新的clusterID,但不会清空datanode文件存放目录下的文件,也就是datanode文件存放目录下保存的clusterID还是之前的clusterID,这导致namenode下的clusterID和datanode下的clusterID不一致,无法建立起通信,所以datanode都起不来
解决:
分别找到namenode和datanode 的 current目录下的VERSION文件, 一般是