当你在学习和使用hadoop时,也许会遇到这样的一个问题,运行bin/start-all.sh时发现namenode没有启动,可以通过以下方法进行排查解决:
翻看日志,寻找错误提示,并进行内容的改进,最后进行重启
原因一:权限问题
#查看日志cd /usr/local/hadoop/logs
#发现权限问题,更改文件权限chown -R hadoop:hadoop /usr/local/hadoop/hdfs/*
chown -R hadoop:hadoop /usr/local/hadoop/logs
#重启hadoopbin/stop-all.sh
bin/start-all.sh
原因二:tmp文件问题
#创建hadoop_tmp目录sudo mkdir ~/hadoop_tmp
#修改hadoop/conf目录里面的core-site.xml文件,加入以下节点
hadoop.tmp.dir
/home/user/hadoop_tmp
A base for other temporary directories.
#格式化Namenodehadoop namenode –format
#启动hadoopstart-all.sh
以上是hadoop namenode启动不了常见的原因,当然不排除其他原因的存在,可以尝试用这两种方式试一试!