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

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

  1. 排查节点日志,发现不能访问数据路径,报错关键内容如下:
    Unable to access ‘path.data’ (/mnt/elasticsearch/slave/data)……
  2. 检查挂载磁盘,df -Thlsblk -f
    发现磁盘没有占满,使用容量还有剩余很多,文件系统为xfs
  3. cd到数据路径,没有报错,ls有报错:ls: cannot open directory Input/output error。据此怀疑磁盘或文件系统故障。我们先排除文件系统故障。
  4. 此时设备已经处于不可用状态,先尝试重启机器(reboot)-> 就这样解决了。
  5. 如果重启没有解决,依然是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
    如果修复失败,硬件报修。

你可能感兴趣的:(elasticsearch,大数据,搜索引擎)