elasticsearch報錯之 memory locking requested for elasticsearch process but memory is not locked


安裝elasticsearch報錯如下:

[2019-01-14T03:57:16,453][ERROR][o.e.b.Bootstrap          ] [ip-172-31-30-62.ec2.internal] node validation exception
[1] bootstrap checks failed
[1]: memory locking requested for elasticsearch process but memory is not locked

 所以就去網上查找資料,發現都不是適應自己的環境。最后在官網找到了方法:

不過先跟大家聲明一點就是:環境不一樣解決的方法也不一樣,我這里是Centos7.5版本的系統,所有的服務都由systemd來管理。elasticsearch是6.5.4版本,使用RPM包的方式安裝的。

現在我們開始解決問題:

1、修改/etc/sysconfig/elasticsearch文件調整JVM內存大小

ES_JAVA_OPTS="-Xms4g -Xmx4g" 
MAX_LOCKED_MEMORY=unlimited

替換4g為總內存的一半(Elasticsearch官方建議是主機總內存的一半)

2、修改/etc/security/limits.conf文件內容

elasticsearch soft memlock unlimited
elasticsearch hard memlock unlimited

需要將elasticsearch替換為運行Elasticsearch程序的用戶

3、在/etc/systemd/system/elasticsearch.service.d目錄下創建一個文件override.conf,並添加下列內容

[Service]
LimitMEMLOCK=infinity

詳情我們可以參考:https://www.elastic.co/guide/en/elasticsearch/reference/current/setting-system-settings.html#systemd

4、最后重新載入配置文件更新服務

systemctl daemon-reload

這個時候再重啟即可解決問題

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM