您的位置:首页 > Web前端 > Node.js

Hadoop HDFS Namenode启动不成功

2014-09-11 11:25 363 查看
今天在Pseudodistributed mode下启动HDFS
见配置http://blog.csdn.net/norriszhang/article/details/38659321

但是在试验向HDFS里拷贝文件时,发现出错,说没有找到namenode,用jps查看,有datanode和secondary namenode都启动起来了,但NameNode没有启动起来,用netstat -anp | grep 8020查看HDFS的默认端口8020也没有被监听。

经网上查询,得知原因:引 http://blog.csdn.net/bychjzh/article/details/7830508

原来是因为HDFS把namenode的格式化信息存在了系统的tmp目录下,该目录每次开机会被清空,因此每次重新启动机器,都需要重新格式化HDFS。
解决方案是配置一个新的tmp目录给hadoop

在$HADOOP_INSTALL/etc/hadoop/core-site.xml中添加一个property
<property>
<name>hadoop.tmp.dir</name>
<value>/home/norris/hadoop_tmp</value>
<description>A base for other temporary directories.</description>
</property>

这样就把hadoop的tmp目录设置到/home/norris/hadoop_tmp下面了,就不用担心下次启动会被清空了。

配置好后,先格式化namenode
%hadoop namenode -format
再启动HDFS
%start-dfs.sh
再向HDFS里放文件。
%hadoop fs -copyFromLocal /home/norris/data/hadoop/weatherdata.txt /usr/norris/weatherdata.txt
再关机,重启,再启动HDFS
%start-dfs.sh
再查看jps
有namenode被启动起来了。
查看文件:
%hadoop fs -ls /usr/norris/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  hadoop hdfs namenode