本文共 567 字,大约阅读时间需要 1 分钟。
在启动Hadoop时,通过jps目录发现没有datanode进程。
[root@hadoop ~]# jps1792 SecondaryNameNode1937 Jps1650 DataNode
网上搜了下,网上的说法都是由于进行hadoop格式化的时候没有事先结束所有进程,或者多次进行了format导致的datanode的clusterID 和 namenode的clusterID不匹配,从而在启动后没有datanode进程。
解决方法有两种:
方案一: 保留现有数据 用NameNode节点的~/dfs/name/current/VERSION 中的namenode的clusterID替换所有datanode节点机器中~/dfs/data/current/VERSION中的clusterID。 重启启动hadoop:start-all.sh 这种方式不影响现有的数据,避免了重新的格式化。方案二: 重新格式化
执行./stop-all.sh关闭集群 删除存放hdfs数据块的文件夹(hadoop/tmp/),然后重建该文件夹 删除hadoop下的日志文件logs 执行hadoop namenode -format格式化hadoop 重启hadoop集群转载地址:http://hnmzi.baihongyu.com/