现象
本应平淡而愉快的一天,ES的一个索引突然关闭了,而且通过下面的命令去打开索引会导致ES重启。
curl http://xxx.xxx.xxx.xxx:9200/indexname/_open -X POST -d '{}'
排查
第一反应肯定是查看ES的日志。发现ES提示类似“unsafe memory access”的信息。
这种情况可能是磁盘损坏或者文件系统错误导致的。比如出问题的ES所在机器的文件系统是ext4,通过dmesg命令可以看到提示文件系统出错的信息。
修复文件系统
通过fsck命令可以检查和修复文件系统的错误。例如这里是将/d