当前位置 : 主页 > 编程语言 > java >

Hadoop常见错误及解决方案

来源:互联网 收集:自由互联 发布时间:2023-03-22
1hadoop集群启动之后dataNode节点没有启动 启动Hadoop集群之后slave机器的dataNode节点没有启动 master机器的nameNode节点启动了 1、 先/stop-all.sh暂停所有服务 2、删除hadoop目录下的 logs、tmp文件夹

1 hadoop集群启动之后dataNode节点没有启动

启动Hadoop集群之后slave机器的dataNode节点没有启动 master机器的nameNode节点启动了

1、 先/stop-all.sh暂停所有服务

 2、删除hadoop目录下的 logs、tmp文件夹(DataNode存放数据块的位置) 

3、重新格式化: (同样是在bin目录下)./hadoop namenode -format

 4、重新启动集群:./start-all.sh 

5、通过jps查看进程 就好了 

    

2 datanode启动后,在web50070端口发现不到datanode节点

问题是:

hdfs-site.xml的tmp目录位置设置错了。

解决方法:

    删除掉各个节点上面的tmp(可能与我设置的路径和文件不同,对应你自己在hdfs-site.xml中设置的dfs.name.dir路径就好了),然后格式化集群,最后重启集群,问题搞定了。

 

3 Namenode和Datanode都正常启动,但是web页面不显示

在hdfs-site.xml配置文件中,加入

<property>

        <name>dfs.namenode.datanode.registration.ip-hostname-check</name>

        <value>false</value>

</property>

 

4 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

问题:hadoop期望是GLIBC_2.14,而安装的是GLIBC_2.12,所以报警告

解决方案:将报错级别提高

$ vim /home/hadoop/hadoop/etc/hadoop/log4j.properties

添加如下行:

​​log4j.logger.org.apache.hadoop.util.NativeCodeLoader=ERROR​​

然后在执行hdfs命令就不会报这个警告了

$ hdfs dfs -ls /                       //执行无任何warn

 

更多待更新~~~~~~~~~~~~~~~~

上一篇:java正则表达式判断
下一篇:没有了
网友评论