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

  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.csdn.net/baidu_19473529/article/details/52813656

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果你在终端执行`sbin/start-all.sh`命令时出现`zsh: no such file or directory: sbin/start-all.sh`的错误提示,可能是因为你的当前工作目录不在Hadoop安装目录下。 你可以通过以下步骤解决这个问题: 1. 确认Hadoop安装目录 首先,你需要确认Hadoop的安装目录。假设你将Hadoop安装在/usr/local/hadoop目录下,可以使用以下命令进入Hadoop安装目录: ``` cd /usr/local/hadoop ``` 2. 启动Hadoop 进入Hadoop安装目录后,执行以下命令启动Hadoop: ``` sbin/start-all.sh ``` 如果一切顺利,你应该可以看到输出类似于以下内容的信息: ``` starting namenode, logging to /usr/local/hadoop/logs/hadoop-<your-username>-namenode-<your-machine-name>.out localhost: starting datanode, logging to /usr/local/hadoop/logs/hadoop-<your-username>-datanode-<your-machine-name>.out localhost: starting secondarynamenode, logging to /usr/local/hadoop/logs/hadoop-<your-username>-secondarynamenode-<your-machine-name>.out starting resourcemanager, logging to /usr/local/hadoop/logs/yarn-<your-username>-resourcemanager-<your-machine-name>.out localhost: starting nodemanager, logging to /usr/local/hadoop/logs/yarn-<your-username>-nodemanager-<your-machine-name>.out ``` 这表示Hadoop已经成功启动了。 注意,如果你的Hadoop版本较新,可能需要使用以下命令启动Hadoop: ``` sbin/start-dfs.sh sbin/start-yarn.sh ``` 这会分别启动Hadoop的分布式文件系统和资源管理器。 总之,无论使用哪个命令,一定要确保你的当前工作目录在Hadoop安装目录下。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值