linux下的hadoop配置 sbin/start-all.sh datanode守护进程启动失败----解决方案

本文介绍了解决Hadoop集群中Datanode无法启动的问题,通过修改clusterID的方法使Datanode成功启动。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 在shell下输入jps命令启动的守护进程中发现缺少datanode
  2. 进入关于datanode的log文件中查看warm信息
    这里写图片描述
    ls —表示的该目录下所有文件

  3. 选择关于datanode的log文件
    这里写图片描述

  4. 查看关于报错信息
    这里写图片描述
    2017-03-04 00:25:16,682 WARN org.apache.hadoop.hdfs.server.common.Storage: java.io.IOException: Incompatible clusterIDs in /home/1/hadoop/dfs/data: namenode clusterID = CID-865176a1-84b6-41bf-9abf-5bdf950cccb3; datanode clusterID = CID-3ec8c8b7-04c5-4f28-aad7-ccc91b3cb70b
    2017-03-04 00:25:16,683 FATAL org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for Block pool (Datanode Uuid
    意思已经很明显了是两个id不相等,在网上查了一下,网上说的是格式化,问题依旧没解决,而且这个办法在实际生产中并不科学,下面看一种比较好的解决办法,去修改clusterID让他们的值相等就可以了。

  5. 然后只需要找到版本(version)文件即可,首先我们进入hdfs-site.xml
    这里写图片描述
    这里写图片描述
  6. 然后发现关于datanode守护进程的路径
    这里写图片描述
    然后将报错信息中clusterID替换version版本文件中的属性 保存

  7. 最后执行sbin/stop-all.sh命令停止所有进程,再执行sbin/start-all.sh启动所有进程
    这里写图片描述

    这里写图片描述

Datanode成功启动!(但是我又发现namenode没有启动,真的难受这里写图片描述

参考资料http://blog.youkuaiyun.com/baidu_19473529/article/details/52813656

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值