• Hadoop 3.3.0问题解决汇总


    启动 HDFS

    [zhangbin@hadoop102 hadoop-3.3.0]$  sbin/start-dfs.sh

    异常信息:

    hadoop102: ERROR: Cannot set priority of namenode process 35346

    解决方法:

     切换到hadoop日志目录:

     [zhangbin@hadoop102 hadoop-3.3.0]$ cd logs/

       查看日志信息:

        [zhangbin@hadoop102 logs]$ cat hadoop-zhangbin-namenode-hadoop102.log

        异常信息大体为这样:

    2021-04-05 10:21:36,656 INFO org.apache.hadoop.http.HttpServer2: HttpServer.start() threw a non Bind IOException
    java.net.BindException: Port in use: hadoop102:9870
    at org.apache.hadoop.http.HttpServer2.constructBindException(HttpServer2.java:1292)
    at org.apache.hadoop.http.HttpServer2.bindForSinglePort(HttpServer2.java:1314)
    at org.apache.hadoop.http.HttpServer2.openListeners(HttpServer2.java:1373)
    at org.apache.hadoop.http.HttpServer2.start(HttpServer2.java:1223)
    at org.apache.hadoop.hdfs.server.namenode.NameNodeHttpServer.start(NameNodeHttpServer.java:170)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.startHttpServer(NameNode.java:946)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:757)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:1014)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:987)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1756)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1821)
    Caused by: java.io.IOException: Failed to bind to hadoop102/192.168.10.102:9870
    at org.eclipse.jetty.server.ServerConnector.openAcceptChannel(ServerConnector.java:346)
    at org.eclipse.jetty.server.ServerConnector.open(ServerConnector.java:307)
    at org.apache.hadoop.http.HttpServer2.bindListener(HttpServer2.java:1279)
    at org.apache.hadoop.http.HttpServer2.bindForSinglePort(HttpServer2.java:1310)
    ... 9 more
    Caused by: java.net.BindException: 地址已在使用
    at sun.nio.ch.Net.bind0(Native Method)
    at sun.nio.ch.Net.bind(Net.java:433)
    at sun.nio.ch.Net.bind(Net.java:425)
    at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)
    at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
    at org.eclipse.jetty.server.ServerConnector.openAcceptChannel(ServerConnector.java:342)
    ... 12 more

    解决方法:找到到占用端口,并杀死

    [zhangbin@hadoop102 logs]$ lsof -i:9870 -P

    COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
    java 22003 zhangbin 289u IPv4 89125 0t0 TCP hadoop102:9870 (LISTEN)

    [zhangbin@hadoop102 logs]$ kill -9 22003

    重新启动即可

    DataNode和NameNode进程同时只能有一个工作(启动集群之后,DataNode无法启动)
     
    原因->借用一张图(分析原因):

    解决办法:

      停止所有hadoop节点的所有服务

      删除每个服务节点(服务器)中的DataNode里面的信息(默认在/tmp,我的在DataNode信息配置在了hadoop项目根目录的data中, 并且删除hadoop下的logs目录,删除这两个目录里的所有文件)

      重新格式化hadoop:指令:

                hdfs namenode -format

           启动hadoop服务即可

      

     
  • 相关阅读:
    js学习(三)对象与事件
    js学习(二)
    js学习(一)
    SSM+Redis结构框架及概述
    javaBean、EJB、POJO
    flex布局时的居中问题
    layui后台管理系统的坑
    基于element的模糊查询
    vue数组的运用
    uni-app 图片上传(uploadFile)
  • 原文地址:https://www.cnblogs.com/19930521zhang/p/14617926.html
Copyright © 2020-2023  润新知