程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

Hadoop启动时没有datanode启动并且DataNode只显示一个节点

发布于2021-06-12 13:19     阅读(492)     评论(0)     点赞(12)     收藏(1)


问题①

在第一次格式化dfs后,启动并使用了hadoop,后来又重新执行了格式化命令(hdfs namenode -format)。然后再启动发现一个DataNode都没有启动

排除

查看日志发现

java.io.IOException:Incompatible clusterIDs in /home/storm/hadoop/dfs/data: namenode clusterID XXXX

日志上看,datanode的clusterID 和 namenode的clusterID 不匹配。

出现该问题的原因

在第一次格式化dfs后,启动并使用了hadoop,后来又重新执行了格式化命令(hdfs namenode -format),这时namenode的clusterID会重新生成,而datanode的clusterID 保持不变。

解决

那思路就很简单了,将NameNode的Cluster ID复制到所有的DataNode 进行覆盖即可,VERSION 文件保存Cluster ID等节点信息。我们先find 找到对应的VERSION文件路径,记得先关闭Hadoop!

  1. find / -iname “VERSION”
    我的VERSION文件路径是/opt/hadoopdata/dfs/data/current/VERSION
  2. 把NameNode的Cluster ID复制到所有DataNode

我的node1是NameNode,其他节点都是DataNode,保证所有DataNode的Cluster ID都是和NameNode一致即可
在这里插入图片描述

问题②

node4是node3复制过来的(我在4台虚拟机搭的完全分布式Hadoop),
但是DataNode不会同时显示node3和node4,反复刷新网页会随机显示~node2和node3
node2和node4

排除

能刷出来说明配置正常,那就是VERSION文件的datanodeUuid配置问题了。

解决
  1. find / -iname “VERSION”
    我的VERSION文件路径是/opt/hadoopdata/dfs/data/current/VERSION

  2. 把datanodeUuid随便改个把字母保证和其他DataNode不一样即可
    在这里插入图片描述

顺利解决!
在这里插入图片描述



所属网站分类: 技术文章 > 博客

作者:我很伤感

链接:http://www.javaheidong.com/blog/article/221848/2d927ecd6f29158feaa4/

来源:java黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

12 0
收藏该文
已收藏

评论内容:(最多支持255个字符)