异常描述
hadoop启动过程中namenode打不开,通过查看logs文件下,namenode-xxx.log文件,发现一下错误信息:
org.apache.hadoop.hdfs.server.common.InconsistentFSStateException
提示文件无法访问或者找不到,
分析:
core-site.xml 与 hdfs-site.xml中的hdfs存储路径设置不一致,导致的。只需要在其中一个文件下添加hdfs路径即可
解决
这里在hdfs-site.xml中配置dfs.namenode.name.dir和dfs.namenode.data.dir。
打开vim etc/hadoop/hdfs-site.xml文件;
添加的时候注意要用自己的路劲,以下放上我的代码:
<!-- NameNode 存放的位置 -->
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///opt/module/hadoop-3.1.3/data/dfs/name</value>
</property>
<!-- DataNode 存放的位置 -->
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///opt/module/hadoop-3.1.3/data/dfs/data</value>
</property>
初试化
配置好以后,有些小伙伴可能还是没用。这时候我们删除logs和data对集群再格式化一下:
rm -rf data/
rm -rf logs/
格式化指令:hdfs namenode -format
总结
找问题解决问题,制造问题解决问题。