解决Hadoop中NameNode与DataNode不能同时启动、启动集群时DataNode无法启动的问题

问题产生的原因:

格式化NameNode,会产生一个集群id,启动DataNode时,会产生一个相同的id
如果多次初始化NameNode,会导致NameNode和DataNode的id不一致,集群找不到之前的数据
从而出现start-all.sh的时候DataNode无法正常启动,或者两个只要启动其中一个,另一个就会挂掉的情况

找到tmp路径:

首先进入自己的Hadoop目录下
cd etc/hadoop
打开配置文件
vi core-site.xml
记下tmp目录的路径地址

在这里插入图片描述

进入tmp下的dfs目录,两个id分别存放在对应的目录下
在这里插入图片描述

查看NameNode的id:

查看name目录下的current目录下的VERSION文件
cat name/current/VERSION
这里可以显示NameNode的id
clusterID=CID-8d8cddfb-06da-48a4-a7cc-ecde089873f6

查看DataNode的id:

查看data目录下的current目录下的VERSION文件
cat data/current/VERSION
这里可以显示DataNode的id
clusterID=CID-8d8cddfb-06da-48a4-a7cc-ecde089873f6

正常情况应该是一样的
如果不一样

问题解决方法:

1、将NameNode中的id修改为与DataNode一致
2、直接删除tmp目录再重新初始化集群(推荐

注意:

以后如果需要重新初始化NameNode,记得删除tmp目录

  • 17
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值