搭建HDFS集群的错误一:格式化namenode后,格式化失败,日志报错:ERROR namenode.FSnamesystem: initialzation failed

第一次搭建HDFS集群时格式化namenode之后,查看日志发现格式化失败,报错:ERROR namenode.FSnamesystem: initialzation failed
背景:公司服务器第一次搭集群,之前这些机器上没有搭过。
在安装HDFS的时候,在master机器上初始化namenode,之后查看日志,发现初始化失败,报错信息:搭建HDFS集群的错误一:格式化namenode后,格式化失败,日志报错:ERROR namenode.FSnamesystem: initialzation failed_第1张图片
各种百度,查找问题,各种方法基本上都尝试了,没能找到一个有效的解决办法。后来请教身边大神,发现还是配置文件的问题,解决如下:
把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文件, 一般是在 /data 目录下
/data/dfsname/current 这个目录下的VERSION文件是namenode的版本信息
/data/dfs/current 这个目录下的VERSION文件是datanode的版本信息(我的机器上是这个目录)
搭建HDFS集群的错误一:格式化namenode后,格式化失败,日志报错:ERROR namenode.FSnamesystem: initialzation failed_第2张图片
如下图把namenode VERSION 文件方框中的内容,复制粘贴到datanode的VERSION文件中
搭建HDFS集群的错误一:格式化namenode后,格式化失败,日志报错:ERROR namenode.FSnamesystem: initialzation failed_第3张图片

搭建HDFS集群的错误一:格式化namenode后,格式化失败,日志报错:ERROR namenode.FSnamesystem: initialzation failed_第4张图片
如上两图,两个文件中的clusterID 一致了 ,重新启动datanode,启动成功!

你可能感兴趣的:(关于集群搭建,hadoop集群搭建,hadoop集群配置,namenode,datanode)