问题:
hadoop集群不管怎么启动在hadoop管理界面都看到只有一个datanode
原因:
我hadoop集群搭建了三台机器,一台master,2台slave,slave1,slave2。slave1中间出了问题,被我删除之后,又从slave2复制了一台重新命名为slave1(这是在hadoop格式化之后复制的,VERSION的信息就一起过去了),
导致datanode的VERSION里面有2个id是一样的,datanodeUuid和storageID,因此在master:50070上死活只看到一个datanode。
解决方法:
手动删除slave1的VERSION文件,路径是/usr/local/src/hadoop-2.6.1/tmp/dfs/data/current/VERSION
删除之后,重启hdfs集群。在slave1上jps一下,发现又报另外一个错误:
rror occurred during initialization of VM
java.lang.Error: Properties init: Could not determine current working directory.
at java.lang.System.initProperties(Native Method)
at java.lang.System.initializeSystemClass(System.java:1119)
这个问题的是JVM的原因,执行命令source /etc/profile,java -version正常出现版本信息就可以了。
再次Jps,刷新webUI,所有的datanode正常显示。