elasticsearch5.0啟動出現的錯誤(自己做過測試,有錯誤可以在這上面找)
elasticsearch5.0啟動失敗,出現如下提示:
1、Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) failed; error='Cannot allocate memory' (errno=12)
由於elasticsearch5.0預設分配jvm空間大小為2g,修改jvm空間分配
# vim config/jvm.options
-Xms2g
-Xmx2g
修改為
-Xms512m
-Xmx512m
2、max number of threads [1024] for user [elasticsearch] is too low, increase to at least [2048]
修改 /etc/security/limits.d/90-nproc.conf
* soft nproc 1024
* soft nproc 2048
3、max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
修改/etc/sysctl.conf配置檔案,
cat /etc/sysctl.conf | grep vm.max_map_count
vm.max_map_count=262144
如果不存在則新增
echo "vm.max_map_count=262144" >>/etc/sysctl.conf
4、max file descriptors [65535] for elasticsearch process likely too low, increase to at least [65536]
ulimit -n 65536
以下是在5.5.1是踩過的坑
5、啟動異常:ERROR: bootstrap checks failed
system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk
問題原因:因為Centos6不支援SecComp,而ES預設bootstrap.system_call_filter為true進行檢測,所以導致檢測失敗,失敗後直接導致ES不能啟動。詳見 :https://github.com/elastic/elasticsearch/issues/22899
解決方法:在elasticsearch.yml中配置bootstrap.system_call_filter為false,注意要在Memory下面:
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
6、logstash使用rpm包安裝的時候沒有配置init的啟動指令碼
預設情況使用rpm包安裝完logstash之後沒有啟動指令碼。官網給了一個指令碼,需要根據不同的系統版本生成對應的啟動指令碼,而且官網沒有給明使用方法,對於新使用者來說算是個坑,不過在終端可以檢視到指令碼的使用幫助# /usr/share/logstash/bin/system-install --help
生成啟動指令碼,centos6使用sysv引數,centos7使用systemd
# /usr/share/logstash/bin/system-install /etc/logstash/startup.options sysv
Successfully created system startup script for Logstash
---------------------
作者:蜷縮的蝸牛
來源:CSDN
原文:https://blog.csdn.net/qq942477618/article/details/53414983
版權宣告:本文為博主原創文章,轉載請附上博文連結!