es報錯如下:
[2019-10-11T16:23:28,945][ERROR][o.e.b.Bootstrap ] [es-node-1] node validation exception[3] bootstrap checks failed
[1]: max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]
[2]: memory locking requested for elasticsearch process but memory is not locked
[3]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
[1]: max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]
切換到root用戶,編輯limits.conf 添加類似如下內容
vi /etc/security/limits.conf
添加如下內容: (soft nproc和hard nproc也可以設置成65536) 修改成
root soft nofile 65535
root hard nofile 65535
* soft nofile 65536
* hard nofile 65536
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
以上幾個參數的解釋
① soft nproc:可打開的文件描述符的最大數(軟限制)
② hard nproc:可打開的文件描述符的最大數(硬限制)
③ soft nofile:單個用戶可用的最大進程數量(軟限制)
④ hard nofile:單個用戶可用的最大進程數量(硬限制)
[2]: memory locking requested for elasticsearch process but memory is not locked
原因:鎖定內存失敗
解決方案:
切換到root用戶,編輯limits.conf配置文件, 添加類似如下內容:
sudo vim /etc/security/limits.conf
添加如下內容:
* soft memlock unlimited
* hard memlock unlimited
備注:* 代表Linux所有用戶名稱
保存、退出、重新登錄才可生效
[3]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
原因:最大虛擬內存太小
解決方案:切換到root用戶下,修改配置文件sysctl.conf
sudo vim /etc/sysctl.conf
添加下面配置:
vm.max_map_count=655360
並執行命令:
sysctl -p
參考地址:
https://www.cnblogs.com/DreamDrive/p/7853162.html
https://blog.csdn.net/Hey_WonderfulWorld/article/details/73612929