博客 启动Elasticsearch时:[failed to obtain node locks]

启动Elasticsearch时:[failed to obtain node locks]

   数栈君   发表于 2023-07-19 16:59  3354  0

1、报错内容
[root@cnsz91vl01085 elasticsearch-7.4.2]# cat logs/yss.log
Caused by: java.lang.IllegalStateException: failed to obtain node locks, tried [[/app/elasticsearch-7.4.2/data]] with lock id [0]; maybe these locations are not writable or multiple nodes were started without increasing [node.max_local_storage_nodes] (was [1])?
1
2
2、情景描述
启动 elasticsearch 时,出现了 [failed to obtain node locks] 报错

3、问题原因分析
“failed to obtain node locks”的原因通常是无法操作 ./es/data/nodes/0/node.lock 这个文件,我们可以有两个解决方案。

解决方案一: 杀进程
如果node.lock被其他进程使用了。

查看node.lock有没有被使用
[root@cnsz91vl01085 elasticsearch-7.4.2]# lsof ./es/data/nodes/0/node.lock
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 30008 rhlog 55wW REG 253,4 0 16777332 ./data/nodes/0/node.lock
1
2
3
4
先查看es的进程,然后杀掉。具体如下:

1、查进程
[root@cnsz91vl01085 elasticsearch-7.4.2]# ps -ef | grep elastic

2、杀进程
[root@cnsz91vl01085 elasticsearch-7.4.2]# kill -9 `ps -ef | grep elastic |awk '{print $2}'`
1
2
3
4
5
解决方案二:修改node.max_local_storage_nodes
node.max_local_storage_nodes 这个配置限制了单节点上可以开启的ES存储实例的个数,修改这个参数等于2或者更多,可以启动多个实例。每个实例都有一个node.lock,这样 [failed to obtain node locks] 的问题也解决了。

[root@cnsz91vl01085 elasticsearch-7.4.2]# vim ./config/elasticsearch.yml
node.max_local_storage_nodes: 2

免责申明:

本文系转载,版权归原作者所有,如若侵权请联系我们进行删除!

《数据治理行业实践白皮书》下载地址:https://fs80.cn/4w2atu

《数栈V6.0产品白皮书》下载地址:
https://fs80.cn/cw0iw1

想了解或咨询更多有关袋鼠云大数据产品、行业解决方案、客户案例的朋友,浏览袋鼠云官网:
https://www.dtstack.com/?src=bbs

同时,欢迎对大数据开源项目有兴趣的同学加入「袋鼠云开源框架钉钉技术群」,交流最新开源技术信息,群号码:30537511,项目地址:
https://github.com/DTStack

0条评论
社区公告
  • 大数据领域最专业的产品&技术交流社区,专注于探讨与分享大数据领域有趣又火热的信息,专业又专注的数据人园地

最新活动更多
微信扫码获取数字化转型资料
钉钉扫码加入技术交流群