首先会出现几种情况,才会出现启动不了datanode的情况。
1.首先修改过master那台的配置文件,
2.多次Hadoop namenode -format这种不好的习惯。
一般会出现一下报错:
Java.io.IOException: Cannot lock storage /usr/hadoop/tmp/dfs/name. The directory is already locked.
或者是:
[root@hadoop current]# hadoop-daemon.sh start datanode
starting datanode, logging to /usr/local/hadoop1.1/libexec/../logs/hadoop-root-datanode-hadoop.out
[root@hadoop ~]# jps
jps命令发现没有datanode启动
对于这种情况请先试一下:
在坏死的节点上输入如下命令即可:
bin/Hadoop-daemon.sh start DataNode
bin/Hadoop-daemon.sh start jobtracker
如果还不可以的话,那么恭喜你和我遇到的情况一下。
正确的处理方法是,到你的每个Slave下面去,找到.../usr/hadoop/tmp/dfs/ -ls
会显示有: data
这里需要把data文件夹删掉。接着直接在刚才的目录下启动hadoop
start-all.sh
接着查看jps
那么就会出现datanode.了
接着去看
http://210.41.166.61(你的master的IP):50070
里面的活节点有多少个?
http://210.41.166.61(你的master的ip):50030/
显示的node数目。
OK,问题解决。