• 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守护进程。


  • 相关阅读:
    第一章复习(已完结)
    复习——第二章(施工完成,哪里总结的不全或是有问题欢迎指出)
    实验九
    实验五
    实验四
    实验三
    实验二
    实验一
    汇编语言第二章
    【C# 大写金额转阿拉伯数字】大写金额转数值
  • 原文地址:https://www.cnblogs.com/Ricklee/p/11172865.html
Copyright © 2020-2023  润新知