您的位置:首页 > 运维架构 > Linux

hadoop2.8 每次重启linux 都必须重新format datanode的问题

2017-12-09 11:08 411 查看
最近在看hadoop, 本机装的是伪分布模式。 

但每次重启linux后,总需要执行hadoop namenode -format重新格式化namenode。

原因是: 

HDFS把namenode的格式化信息存在了系统的tmp目录下,该目录每次开机会被清空,因此每次重新启动机器,都需要重新格式化HDFS。 

如果之前已经往hdfs里放入了一些文件,这显然是不可接受的。

解决方案如下: 

在你自己的家目录下创建 hadoop/tmp文件夹 

在HADOOP_INSTALL/etc/hadoop/core-site.xml 的configure重新配置namenode的目录 

即添加如下的property
<property>
<name>hadoop.tmp.dir</name>
<value>/home/(当前用户名)/hadoop_tmp</value>
<description>A base for other temporary directories.</description>
</property>
1
2
3
4
5

如果出现下面的错误 

java.io.IOException: Cannot create directory /* * * / * * */tmp/dfs/name/current 

请检查你刚才新建的hadoop/tmp,是否正确分配了用户组与文件夹权限。

配置完成后,执行,hadoop namenode -format 重新格式化namenode 

再重启linux, 

start-dfs.sh 

jps看看namenode是否启动起来。 

hadoop fs -mkdir /test 

hadoop fs -ls / 

随便执行两个命令确认下hdfs是否正常使用。

hdfs dfs -mkdir /user

hdfs dfs -mkdir /user/<username>

hdfs dfs -ls /

参考:http://blog.csdn.net/jobschen/article/details/45535827



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  hadoop linux
相关文章推荐