在/etc/elasticsearch/conf.d/新建一個es的配置文件,elasticsearch.conf,這裏碰到一個小坑,網上不少文章介紹的是elasticsearch.ini,啓動發現找不到elasticsearch,打開/etc/supervisor/supervisor.conf發現引用的是conf.d/*.confhtml
趕忙改過了。java
下邊是elasticsearch.conf的內容linux
[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=10web
修改後繼續啓動bootstrap
supervisorctl elasticsearch start瀏覽器
發現能夠啓動了,過了一下子在瀏覽器輸入http://localhost:9200,發現沒法訪問。jvm
# ps -A|grep elaselasticsearch
也找不到任何進程(這裏有一個坑,elasticsearch啓動後的進程是java,而不是elasticsearch,即便啓動了上邊的命令也找不到名稱爲elasticsearch的進程)ui
將supervisor的配置文件,添加下面的配置,開啓supervisor的Web管理界面spa
[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的配置說明。
http://www.javashuo.com/article/p-pkhrvsfg-gy.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守護進程。