admin管理员组文章数量:1565276
我的情况是:
起初安装配置好hadoop后(安装搭建hadoop集群详细步骤),使用jps命令都可以查看到NameNode,SecondaryNameNode,jps,ResourceManager,NodeManager,DataNode
节点,但是每天打开电脑重新启动虚拟机,启动集群后,要么namenode节点没了,要么就是datanode节点没了。删除安装包下的logs和tmp,再重新启动hadoop也没有用。后面我一顿百度终于找到了原因所在:
在配置hdfs时,我们只配置了datanode的目录,而没有配置namenode的相关信息。默认的tmp文件每次重新开机会被清空,与此同时namenode的格式化信息就会丢失。所以,每次一开机,集群找不到namenode的信息,故每次都要重新格式化集群。
我的解决方案:
修改hadoop260/etc/hadoop目录下的core-site.xml文件末尾中,加入如下的配置
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/soft/hadoop260/Hadoop_tmp</value>
</property>
这里我将从hadoop官网下载的hadoop-2.6.0-cdh5.14.2.tar.gz的安装包解压在/opt目录下,
然后将解压好的文件移到soft目录下并重命名为hadoop260,然后再在hadoop260目录下建立Hadoop_tmp目录,用于存放namenode的信息。
配置好后使用命令hdfs namenode -format
重新格式化,再使用命令start-all.sh
启动hadoop就可以了。
版权声明:本文标题:完美解决Hadoop 每次打开虚拟机重启hadoop都要重新格式化才能启动Namenode或DataNode节点的问题 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dianzi/1726470518a1072046.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论