supervisor 啟動ElasticSearch報錯問題


在/etc/elasticsearch/conf.d/新建一個es的配置文件,elasticsearch.conf,這里碰到一個小坑,網上很多文章介紹的是elasticsearch.ini,啟動發現找不到elasticsearch,打開/etc/supervisor/supervisor.conf發現引用的是conf.d/*.conf

趕緊改過了。

下邊是elasticsearch.conf的內容

 

[program:elasticsearch]
command=/opt/elasticsearch-6.8.1/bin/elasticsearch
directory=/opt/elasticsearch-6.8.1/bin/
autorestart=true
autostart=true
stderr_logfile=/var/log/supervisor/elasticsearch_err.log
stdout_logfile=/var/log/supervisor/elasticsearch_out.log
environment=JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
user=es
password=espassword
stopsignal=INT
startsecs=10

修改后繼續啟動

supervisorctl elasticsearch start

發現可以啟動了,過了一會兒在瀏覽器輸入http://localhost:9200,發現無法訪問。

# ps -A|grep elas

也找不到任何進程(這里有一個坑,elasticsearch啟動后的進程是java,而不是elasticsearch,即使啟動了上邊的命令也找不到名稱為elasticsearch的進程)

將supervisor的配置文件,添加下面的配置,開啟supervisor的Web管理界面

[inet_http_server]
port=*:9001
username=user
password=password

然后重新啟動supervisor

#service restart supervisor

然后在瀏覽器里輸入:http://localhost:9201,在鑒權窗口輸入上邊設置的用戶名密碼,登錄進入supervisor的web管理界面

顯示supervisor正在啟動,單擊Action下的Tail -f,可以顯示實時的啟動信息,在里邊找到了兩個錯誤

ERROR: [2] bootstrap checks failed
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
[2]: max number of threads [3300] for user [es] is too low, increase to at least [4096]

 這個錯誤在剛安裝elasticsearch時遇到過,是limit設置的訪問文件數和進程數限制導致的,把/etc/security/limits.conf設置值為:


* hard nofile 65536
* soft nofile 65536
* soft nproc 4096
* hard nproc 4096

文件數為65536,進程數為5096,使用es用戶啟動就不再報錯了。但是現在又出現了這個錯誤,肯定是跟supervisor配置有關系,於是開始查找supervisor的配置說明。

https://www.cnblogs.com/xuezhigu/p/7660203.html

在上邊的地址找到了下邊的說明:


minfds=1024 ; 這個是最少系統空閑的文件描述符,低於這個值supervisor將不會啟動。 系統的文件描述符在這里設置cat /proc/sys/fs/file-max 默認情況下為1024。。。非必須設置

minprocs=200 ; 最小可用的進程描述符,低於這個值supervisor也將不會正常啟動。 ulimit -u這個命令,可以查看linux下面用戶的最大進程數 默認為200。。。非必須設置

十分的可疑,當前supervisor的配置沒有此項,果斷在配置文件的[supervisord]節上填上,並把相應值分別改為65535和4096,然后重新啟動supervisor。

稍等片刻,瀏覽器訪問http://localhost:9200,久違的界面又出現了

不錯,嗯,下次折騰kibana的supervisor守護進程。

 



免責聲明!

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



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