ES集群磁盘I/O异常修复

问题描述

用户在例行巡检过程发现es有data节点处于停止状态,进行启动后,页面进度条显示绿色已完成,但实际进程启动失败了。

排查步骤

看日志报错

  1. 排查节点日志,发现不能访问数据路径,报错关键内容如下:
    Unable to access ‘path.data’ (/mnt/elasticsearch/slave/data)……

检查磁盘空间

  1. 检查挂载磁盘,df -Thlsblk -f
    发现磁盘没有占满,使用容量还有剩余很多,文件系统为xfs

简单测试文件系统

  1. cd到数据路径,没有报错,ls有报错:ls: cannot open directory Input/output error。据此怀疑磁盘或文件系统故障。我们先排除文件系统故障。

重启机器

  1. 此时设备已经处于不可用状态,先尝试重启机器(reboot)-> 就这样解决了。

还未解决?

那需要进行文件系统修复操作了。

文件系统修复步骤

如果重启没有解决,依然是Input/output error,那么尝试进行文件系统修复操作如下:
1. 从【2】中获取到要修复的挂载点,如/dev/sdb
2. xfs的文件系统,使用如下命令进行修复:xfs_repair /dev/sdb
3. 正常的话要提示“设备或资源忙”,“couldn’t initialize XFS library”,需要先取消挂载umount /dev/sdb
4. 继续执行修复:

xfs_repair /dev/sdb -L

Phase 1 - find and verify superblock...
Phase 2 - using internal log
        - zero log...
Phase 4 - check for duplicate blocks...
        - setting up duplicate extent list...
        - check for inodes claiming duplicate blocks...
        - agno = 0
        - agno = 3
        - agno = 4
        - agno = 2
        - agno = 5
        - agno = 6
        - agno = 1
        - agno = 7
Phase 5 - rebuild AG headers and trees...
        - reset superblock...
Phase 6 - check inode connectivity...
        - resetting contents of realtime bitmap and summary inodes
        - traversing filesystem ...
        - traversal finished ...
        - moving disconnected inodes to lost+found ...
Phase 7 - verify and correct link counts...
done
```

修复完成后再把磁盘挂上,即可生效:mount /dev/sdb /mnt/elasticsearch/data

最后

如果修复失败,硬件报修。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

1024点线面

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值