hdfs(一)高可用单NameNode从standby恢复为active

文章描述了一种情况,即在一个HDFS高可用集群中,一个Namenode的信息丢失,导致集群无法正常工作。解决方法包括重新搭建Namenode节点,导入元数据,更新配置,格式化Zookeeper上的Namenode记录,并启动集群。作者还提出了是否可以从高可用状态降级为单Namenode状态的思考。

1、背景

        有一个hdfs高可用集群,因为某些操作,导致其中一个namenode的信息全部丢失了。最后只剩下一个完整的namenode信息和datanode信息。于是在在启动hdfs后发现独有的namenode始终处于standby状态。即使通过hdfs haadmin -transitionToActive命令也不能强制转换namenode为active。因此hdfs一直不能正常对外提供服务。

2、解决思路

        高可用hdfs集群,至少要有两个namenode节点,如果只有一个namenode节点,那么无论怎么启动,namenode节点状态始终为standby。所以如果想将hdfs重新恢复可用,那么可以重新搭建一个namenode节点。然后将完整的namenode元数据重新导入到新namenode中。

3、解决步骤

3.1 准备一个新节点

        安装好jdk等基础环境

3.2 关闭hdfs所有进程

3.3 将仅存namenode节点的安装文件夹拷贝到新节点

        拷贝时要注意namenode和datanode的存储目录信息。如果namenode和datanode的存储路径就在安装文件夹内,那么拷贝到新节点时要注意删除datanode存储路径下的数据(不删也可以,只是新增的节点只能作为namenode使用,不能作为datanode使用)。

        namenode和datanode的存储路径信息可以通过hdfs-site.xml配置文件中的dfs.namenode.name.dir、dfs.datanode.data.dir进行查看

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值