ES运行时报错,failed to obtain node locks

[复制链接]
feng 发表于 2022-7-1 10:50:18 | 显示全部楼层 |阅读模式
ES运行时报错,failed to obtain node locks


这个错误网上有很多解决方案,基本上就是杀掉es进程,事实上,这个问题的原因可能不仅仅是一样的。
“failed to obtain node locks”的原因通常是没有获得这个lock文件的操作权限,我知道的有两个原因:


1、node.lock被其他进程使用了,这也是网上大多数的解释。解决方案呢,首先查看es的进程,然后杀掉。具体如下:
  1. ps aux | grep elastic
复制代码
  1. kill -9 [<font color="#ff0000">pid</font>]                             #此<font color="#ff0000">pid</font>请按实际修改
复制代码



这里,我想强调一下,在使用上面的解决方案前,可以先确认下node.lock是否被某个进程占用,命令如下
  1. lsof node.lock
复制代码

如果被占用,会显示出占用的进程。


2、目录(文件)权限不对
如果登陆时使用root账号,安装ES5以后的版本时需要elasticsearch账号,如果安装过程中不小心,第一次运行ES时,会报错。这时,只要删除data下的node目录,再次运行ES就可以解决。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|RuZhuo ( 鄂ICP备16015978号-8 )

GMT+8, 2024-5-16 16:25 , Processed in 0.030035 second(s), 27 queries .

Powered by RuZhuo

快速回复 返回顶部 返回列表