Hadoop集群塔建常见bug

发布于:2022-11-29 ⋅ 阅读:(360) ⋅ 点赞:(0)

1.WARNING: log4j.properties is not found. HADOOP_CONF_DIR may be incomplete.

解决方法:

在环境变量中加上HADOOP_HOME_DIR的路径(用到Hadoop的etc/hadoop目录就可以了)

export HADOOP_CONF_DIR=/home/hadoop22/software/hadoop/hadoop-3.1.3/etc/hadoop

 

2.WARN org.apache.hadoop.hdfs.server.common.Util: Path /usr/mywind/name should be specified as a URI in configuration files. Please update hdfs configuration.
问题定位:hdfs-site.xml
问题原因:
不合规范的URI格式
解决办法:
把dfs.namenode.name.dir、dfs.datanode.data.dir的原路径格式如/home/uers/hadoop/hdfs改成file:/home/uers/hadoop/hdfs,即使用完全路径。

3.解决 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform… using builtin-java classes where applicable警告问题

先翻译:警告util.NativeCodeLoader:无法为您的平台加载本机Hadoop库…在适用的情况下使用内置的java类

  • 首先== 判断好自己的警告是否和我的一样==这个很重要,有的教程通过升级glib库达到消除警告的目的,但是我们并不清楚当前我们的Hadoop的期望是哪个版本的glib,所以需要保守起见还是不要升级,先判断自己的问题,如果不符合我的问题那么可以看大佬博客
  • 先进入这个目录
    cd $HADOOP_HOME/lib/native

    看这个目录下都存了什么

    可以看出,libhadoop.so 存放在这个目录下

  • 接下来我们回到$HADOOP_HOME目录
    紧接着输入以下代码
    grep -R 'java.library.path' *

    可以看到:

     在hadoop包中搜索发现,java.library.path被定义为$JAVA_LIBRARY_PATH,但是我们没有定义JAVA_LIBRARY_PATH
    那么问题就好解决了,配置这个环境变量就好啦

  • 在配置环境变量中增加

  • export JAVA_LIBRARY_PATH=/usr/local/hadoop/lib/native
    

  • source .bashrc(每个节点都传一遍环境变量再source一遍)

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到