一、问题
1、hadoop单节点使用 start-all.sh 命令时,没有启动datanode
2、使用 hadoop-daemon.sh start datanode 也无法启动
二、原因
可能是多次格式化导致的,也可能是Namenode和Datanode的NamenodeID不一致
三、解决方案
必须先暂停服务
// hadoop目录/sbin
stop-all.sh
tmp目录:hdfs-site.xml 中指定的 dfs.data.dir 文件夹
方法1、删除指定的 tmp 目录下 dfs/data/current 的 VERSION 文件后启动节点(本人无效)
// hadoop目录/sbin
start-all.sh
方法2、删除 tmp 目录与 logs 目录,重新建 tmp 和 logs 文件夹后格式化再启动
tips:tmp文件夹下还有个dfs文件夹
// 格式化
hadoop namenode -format
// hadoop目录/sbin
start-all.sh
启动后输入jsp查看启动情况。还是没有datanode
单独启动
// hadoop目录/sbin
hadoop-daemon.sh start datanode
再次查看。启动成功