【已解决】ERROR: bootstrap checks failed memory locking requested for elasticsearch process but memory is not locked
【已解决】ERROR: bootstrap checks failed memory locking requested for elasticsearch process but memory is not locked
官网说明:
elasticsearch官网建议生产环境需要设置bootstrap.memory_lock: true
官网的解释 是:发生系统swapping的时候ES节点的性能会非常差,也会影响节点的稳定性。所以要不惜一切代价来避免swapping。swapping会导致Java GC的周期延迟从毫秒级恶化到分钟,更严重的是会引起节点响应延迟甚至脱离集群。
所以最好限制住elasticsearch占用的内存情况,可选少用swap
错误内容:
开启bootstrap.memory_lock: true
后,在Elasticsearch集群启动的时候,会报如下错误
ERROR: bootstrap checks failed memory locking requested for elasticsearch process but memory is not locked
局部生效方式:(针对包管理器安装elasticsearch的形式)
sudo systemctl edit elasticsearch
此命令会在/etc/systemd/system下创建elasticsearch.service.d/override.conf文件
添加如下内容
[Service]
LimitMEMLOCK=infinity
保存,退出,执行如下命令生效
sudo systemctl daemon-reload