2、 以前hadoop启动是正常的,各进程也正常,重新格式化hdfs文件系统hadoop namenode -format后,再启动start-all.sh,也没有报错信息,但是jps发现datanode没有启动,查找datanode日志如下:
# vim hadoop-hduser-datanode-cm134.jaybing.com.log
2014-08-10 10:16:06,693 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: STARTUP_MSG:
/************************************************************
STARTUP_MSG: Starting DataNode
STARTUP_MSG: host = cm134.jaybing.com/202.106.199.38
STARTUP_MSG: args = []
STARTUP_MSG: version = 0.20.2-cdh3u5
STARTUP_MSG: build = git://ubuntu-slave02/var/lib/jenkins/workspace/CDH3u5-Full-RC/build/cdh3/hadoop20/0.20.2-cdh3u5/source -r 302
33064aaf5f2492bc687d61d72956876102109; compiled by 'jenkins' on Fri Oct 5 17:21:34 PDT 2012
************************************************************/
2014-08-10 10:16:08,098 INFO org.apache.hadoop.security.UserGroupInformation: JAAS Configuration already set up for Hadoop, not re-i
nstalling.
2014-08-10 10:16:09,453 ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Incompatible namespaceIDs in /ha
doop/tmp/dfs/data: namenode namespaceID = 2024141122; datanode namespaceID = 1824410798
at org.apache.hadoop.hdfs.server.datanode.DataStorage.doTransition(DataStorage.java:238)
at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:153)
at org.apache.hadoop.hdfs.server.datanode.DataNode.startDataNode(DataNode.java:423)
at org.apache.hadoop.hdfs.server.datanode.DataNode.(DataNode.java:314)
at org.apache.hadoop.hdfs.server.datanode.DataNode.makeInstance(DataNode.java:1683)
at org.apache.hadoop.hdfs.server.datanode.DataNode.instantiateDataNode(DataNode.java:1623)
at org.apache.hadoop.hdfs.server.datanode.DataNode.createDataNode(DataNode.java:1641)
at org.apache.hadoop.hdfs.server.datanode.DataNode.secureMain(DataNode.java:1767)
at org.apache.hadoop.hdfs.server.datanode.DataNode.main(DataNode.java:1784)
2014-08-10 10:16:09,461 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: SHUTDOWN_MSG:
/************************************************************
SHUTDOWN_MSG: Shutting down DataNode at cm134.jaybing.com/202.106.199.38
************************************************************/
启动时报错:
[iyunv@nn ~]# start-all.sh
Starting namenodes on []
localhost: Error: JAVA_HOME is not set and could not be found.
localhost: Error: JAVA_HOME is not set and could not be found.
...
starting yarn daemons
starting resourcemanager, logging to /home/lihanhui/open-source/hadoop-2.1.0-beta/logs/yarn-admin-resourcemanager-localhost.out
localhost: Error: JAVA_HOME is not set and could not be found
直接命令行执行export JAVA_HOME=/PATH/TO/JDK也无法解决问题:
最终在 hadoop-2.4.1/etc/hadoop/libexec/hadoop-config.sh 这个配置文件中搜到报错信息“JAVA_HOME is not set and could not be found”
于是在这个配置文件中, export JAVA_HOME=/PATH/JDK