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就可以了。

本文标签: 都要节点重启虚拟机完美