完美解决Hadoop 每次打开虚拟机重启hadoop都要重新格式化才能启动Namenode或DataNode节点的问题

我的情况是:

起初安装配置好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就可以了。

  • 4
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值