大数据Hadoop启动datanode失败或无法启动的解决方案

解决启动datanode失败或无法启动问题

问题产生原因:
当我们执行文件系统格式化时,会在namenode数据文件夹(即配置文件中dfs.namenode.name.dir在本地系统的路径)中保存一个current/VERSION文件,记录clusterID,标识了所格式化的 namenode的版本。如果我们频繁的格式化namenode,那么datanode中保存(即配置文件中dfs.data.dir在本地系统的路径)的current/VERSION文件只是你第一次格式化时保存的namenode的ID,因此就会造成datanode与namenode之间的id不一致。

解决问题:

1、首先,我们需要对对节点的停止

[root@localhost hadoop-2.7.2]# ./sbin/stop-dfs.sh

2、接着,在文件系统格式化之前,先把Hadoop解压目录有tmp文件删除

[root@localhost data]# rm -rf tmp/

3、当确定把tmp文件删除完毕之后,我们就可以对文件系统进行格式化

[root@localhost hadoop-2.7.2]# ./bin/hdfs namenode -format
19/11/17 15:07:56 INFO namenode.NameNode: STARTUP_MSG: 
/************************************************************
STARTUP_MSG: Starting NameNode
STARTUP_MSG:   host = localhost/127.0.0.1
STARTUP_MSG:   args = [-format]
STARTUP_MSG:   version = 2.7.2

.....

19/11/17 15:07:57 INFO namenode.NameNode: SHUTDOWN_MSG: 
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at localhost/127.0.0.1
************************************************************/

4、当格式化完成之后,我们需要对节点的启动

[root@localhost hadoop-2.7.2]# ./sbin/start-dfs.sh

5、当我们,启动完成之后,对datanode节点的查看,执行:jps

[root@localhost hadoop-2.7.2]# jps
14966 Jps
14696 DataNode

由上面可知,DataNode节点正常启动了!

6、我们可以对其端口的排除,执行: netstat -tpnl | grep java

[root@localhost hadoop-2.7.2]# netstat -tpnl | grep java 
tcp        0      0 192.168.219.7:9000      0.0.0.0:*               LISTEN      10320/java          
tcp        0      0 0.0.0.0:50090           0.0.0.0:*               LISTEN      9123/java           
tcp        0      0 127.0.0.1:44465         0.0.0.0:*               LISTEN      14696/java          
tcp        0      0 0.0.0.0:50070           0.0.0.0:*               LISTEN      10320/java          
tcp        0      0 0.0.0.0:50010           0.0.0.0:*               LISTEN      14696/java          
tcp        0      0 0.0.0.0:50075           0.0.0.0:*               LISTEN      14696/java          
tcp        0      0 0.0.0.0:50020           0.0.0.0:*               LISTEN      14696/java          
[root@localhost hadoop-2.7.2]# 

由上面可知,50070端口可以运行,而80080却没有运行!

这时,我们还需要启动:
NameNode、 NodeManager、ResourceManager节点

参照自己写的博客
伪分布式配置
注意的是:
我们的tmp文件不需要创建的
格式化后会自动会自动帮我们创建tmp文件的里面有其他的日志文件数据
比如配置:core-site.xml
在这里插入图片描述
重新格式化:

root@hadoop100 hadoop-2.7.2]# hadoop namenode -format
DEPRECATED: Use of this script to execute hdfs command is deprecated.
Instead use the hdfs command for it.

19/11/17 23:47:58 INFO namenode.NameNode: STARTUP_MSG: 
/************************************************************
....

/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at hadoop100/192.168.219.7
************************************************************/

启动命令:

[root@hadoop100 hadoop-2.7.2]# start-all.sh

查看进程的端口号:

[root@hadoop100 hadoop-2.7.2]# netstat -tpnl | grep java
tcp        0      0 192.168.219.7:9000      0.0.0.0:*               LISTEN      8505/java           
tcp        0      0 0.0.0.0:50090           0.0.0.0:*               LISTEN      8784/java           
tcp        0      0 127.0.0.1:46389         0.0.0.0:*               LISTEN      8631/java           
tcp        0      0 0.0.0.0:50070           0.0.0.0:*               LISTEN      8505/java           
tcp        0      0 0.0.0.0:50010           0.0.0.0:*               LISTEN      8631/java           
tcp        0      0 0.0.0.0:50075           0.0.0.0:*               LISTEN      8631/java           
tcp        0      0 0.0.0.0:50020           0.0.0.0:*               LISTEN      8631/java           
tcp6       0      0 :::8040                 :::*                    LISTEN      9213/java           
tcp6       0      0 :::8042                 :::*                    LISTEN      9213/java           
tcp6       0      0 192.168.219.7:8088      :::*                    LISTEN      8929/java           
tcp6       0      0 :::37241                :::*                    LISTEN      9213/java           
tcp6       0      0 :::13562                :::*                    LISTEN      9213/java           
tcp6       0      0 192.168.219.7:8030      :::*                    LISTEN      8929/java           
tcp6       0      0 192.168.219.7:8031      :::*                    LISTEN      8929/java           
tcp6       0      0 192.168.219.7:8032      :::*                    LISTEN      8929/java           
tcp6       0      0 192.168.219.7:8033      :::*                    LISTEN      8929/java    

关闭防火墙

[root@hadoop100 hadoop-2.7.2]#  systemctl stop firewalld.service

再次访问虚拟主机+50070
在这里插入图片描述
再次访问虚拟主机+8088
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值