当你在学习和使用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
#重启hadoop
bin/stop-all.sh bin/start-all.sh
原因二:tmp文件问题
#创建hadoop_tmp目录
sudo mkdir ~/hadoop_tmp
#修改hadoop/conf目录里面的core-site.xml文件,加入以下节点
<property> <name>hadoop.tmp.dir</name> <value>/home/user/hadoop_tmp</value> <description>A base for other temporary directories.</description> </property>
#格式化Namenode
hadoop namenode –format
#启动hadoop
start-all.sh
以上是hadoop namenode启动不了常见的原因,当然不排除其他原因的存在,可以尝试用这两种方式试一试!
转载于:https://blog.51cto.com/12306609/2341748