⑴ 解決ElasticSearch啟動報錯
新建普通用戶啟動報錯:Error: Could not find or load main class org.elasticsearch.tools.javaVersionChecker Elasticsearch requires at least Java 8 but your Java version from /usr/java/jdk1.8.0_112/bin/java does not meet this requirement
解決方法:將es放到admin目錄下運行
運行發現報以下錯誤:
這是admin許可權不夠的導致,解決辦法,將用戶切換到root用戶,退出到elasticseach-5.4.0的父目錄,執行以下命令:
chown admin elasticsearch-5.4.0 -R
切換到admin用戶啟動es發現報以下錯誤:
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
配置集群後啟動報以下錯誤:
問題一:ERROR: bootstrap checks failed
max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]
max number of threads [1024] for user [lishang] likely too low, increase to at least [2048]
解決:切換到root用戶,編輯limits.conf 添加類似如下內容
vi /etc/security/limits.conf
添加如下內容:
問題二:max number of threads [1024] for user [lish] likely too low, increase to at least [2048]
解決:切換到root用戶,進入limits.d目錄下修改配置文件。
vi /etc/security/limits.d/90-nproc.conf
修改如下內容:
問題三:max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]
解決:切換到root用戶修改配置sysctl.conf
vi /etc/sysctl.conf
添加下面配置:
vm.max_map_count=655360
並執行命令:
sysctl -p
然後,重新啟動elasticsearch,即可啟動成功。