用户在例行巡检过程发现es有data节点处于停止状态,进行启动后,页面进度条显示绿色已完成,但实际进程启动失败了。
- 排查节点日志,发现不能访问数据路径,报错关键内容如下:
Unable to access ‘path.data’ (/mnt/elasticsearch/slave/data)…… - 检查挂载磁盘,
df -Th
或lsblk -f
发现磁盘没有占满,使用容量还有剩余很多,文件系统为xfs
。 - cd到数据路径,没有报错,ls有报错:ls: cannot open directory Input/output error。据此怀疑磁盘或文件系统故障。我们先排除文件系统故障。
- 此时设备已经处于不可用状态,先尝试重启机器(reboot)-> 就这样解决了。
- 如果重启没有解决,依然是Input/output error,那么尝试进行文件系统修复操作如下:
- 从【2】中获取到要修复的挂载点,如
/dev/sdb
- xfs的文件系统,使用如下命令进行修复:
xfs_repair /dev/sdb
- 正常的话要提示“设备或资源忙”,"couldn't initialize XFS library",需要先取消挂载
umount /dev/sdb
- 继续执行修复:
修复完成后再把磁盘挂上,即可生效: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
。
如果修复失败,报修。 - 从【2】中获取到要修复的挂载点,如
网友评论