解决 HDFS edit log文件损坏问题

本文介绍了HDFS集群中JournalNode因编辑日志(editlog)文件损坏导致的状态异常问题。在分析了由于服务器断电可能导致editlog文件不可读后,提出了一个解决方案:从正常运行的JournalNode节点复制editlog文件到故障节点,并详细说明了操作步骤,包括停止服务、删除损坏文件、拷贝文件、更改权限及重启服务。最后,验证了服务恢复的正常状态。
摘要由CSDN通过智能技术生成

1.现象

CDH集群 HDFS出现爆红项,具体原因是 JournalNode状态异常,查看角色日志如下:

在这里插入图片描述

2.分析

edit log文件里面存放的是hdfs一些状态信息,从报错来看是某个 edits文件无法读取导致的,结合最近服务器出现过一次集体断电,猜测是 edit log文件损坏了。

3.解决

查看集群组件状态,JournalNode一共有 3台机器,其中一台状态异常,另外两台状态良好,于是可以把从其中一台状态良好的机器上拷贝 edit log文件到状态异常的机器。

具体步骤如下:

  1. 停止集群所有服务

  2. 远程连接到有问题的机器,然后执行下面的命令删除损坏的edit log文件

    rm -f /data1/dfs/jnn/nameservice1/current/edits_*
    
  3. 从状态正常的机器拷贝edit log文件

    cd /data1/dfs/jnn/nameservice1/current/                            
    scp host1:/data1/dfs/jnn/nameservice1/current/edits_* ./                     
    chown hdfs:hdfs edits_*               
    
  4. 启动集群所有服务

  5. 验证

    所有服务启动后,等待约 5分钟,查看 JournalNode状态,正常应该是恢复了

注意:这里涉及到的路径要根据实际情况进行修改

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值