• hadoop 完全分布式 下 datanode无法启动解决方法


    问题描述:

    在集群模式下更改节点后,启动集群发现 datanode一直启动不起来。

    我集群配置:有5个节点,分别为master slave1-5 。

    在master以Hadoop用户执行:start-all.sh

    jps查看master节点启动情况:

              NameNode        

             JobTracker

             SecondaryNameNode

    均已经正常启动,利用 master:50070 , Live Nodes 为0, 随进入 slave1:

    ssh slave1,  输入命令 jps ,发现只有 TaskTracker 而没有DataNode。随后看日志

    上网查找解决方法,最后终于解决了,解决方法如下:

    1. 先执行stop-all.sh暂停所有服务

    2. 将所有Salve节点上的tmp(即 hdfs-site.xml 中指定的 dfs.data.dir 文件夹,DataNode存放数据块的位置)、 logs 文件夹删除 , 然后重新建立tmp , logs 文件夹

    3. 将所有Salve节点上的/usr/hadoop/conf下的core-site.xml删除,将master节点的core-site.xml文件拷贝过来,到各个Salve节点

        scp /usr/hadoop/conf/core-site.xml   hadoop@slave1:/usr/hadoop/conf/

    4. 重新格式化: hadoop namenode -format

    5. 启动:start-all.sh

    此外也可能遇见slave的Datanode错误:

    错误1,hadoop datanode 问题 INFO org.apache.hadoop.ipc.RPC: Server at /:9000 not available yet, Zzzzz..

           解决方法见:http://blog.sina.com.cn/s/blog_893ee27f0100zoh7.html,

    错误2,slave节点的DataNode不能连接master, 日志信息为为: INFO org.apache..ipc.Client: Retrying connect to server: master/172.16.0.100:9000. Already tried 0 time(s); 

          解决办法:

             1、ping master能通,telnet master 9000不能通,说明开启了防火墙
            2、关闭master主机防火墙,可以通过/sbin/iptables -F清除所有规则来暂时停止防火墙
                  如果想清空的话,先执行 /sbin/iptables -P INPUT ACCEPT,然后执行 /sbin/iptables -F

    注:这是我碰到的情况,不见得是你遇到的问题,基本上从以下几个方面解决问题:
            1. 检查各个xml文件是否配置正确

            2. Java环境变量配置是否正确

            3. ssh是否无密码互通

            4, Hadoop离开安全模式,hadoop dfsadmin -safemode leave。

    也可以参考这个:http://blog.sina.com.cn/s/blog_76fbd24d01017qmc.html

    本文转载自http://blog.csdn.net/daniel_ustc/article/details/10834413

  • 相关阅读:
    day34
    day33 UDP、进程
    Java RMI 框架(远程方法调用)
    Maven查看JAR包的依赖关系
    连接Oracle数据库的时候报了“Got minus one from a read call”
    Http、Socket和WebService协议之间的区别
    http 协议
    其它
    Jmeter-CSV data set config参数化
    英文
  • 原文地址:https://www.cnblogs.com/king1302217/p/5580142.html
Copyright © 2020-2023  润新知