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

supervisor 启动ElasticSearch报错问题的更多相关文章

  1. 启动elasticsearch报错

    could not find java; set JAVA_HOME or ensure java is in PATH 首先需要安装java 1.yum list installed |grep j ...

  2. Docker启动Elasticsearch报错java.nio.file.AccessDeniedException

    报错信息 Caused by: java.nio.file.AccessDeniedException: /usr/share/elasticsearch/data/nodes 问题分析 表面上是说容 ...

  3. Docker启动Elasticsearch报错vm.max_map_count

    报错信息如下 max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144] 临 ...

  4. 启动elasticsearch报错的几种原因及解决方法

    ERROR: [1] bootstrap checks failed [1]: max virtual memory areas vm.max_map_count [65530] is too low ...

  5. 启动elasticsearch报错解决

    说不定以后会不定期更新该文档 1.提示文件描述符数量太少,修改/etc/security/limits.conf文件,添加. * soft nofile 65537 * hard nofile 655 ...

  6. Springboot整合Elasticsearch报错availableProcessors is already set to [4], rejecting [4]

    Springboot整合Elasticsearch报错 今天使用SpringBoot整合Elasticsearch时候,相关的配置完成后,启动项目就报错了. nested exception is j ...

  7. maven 项目启动tomcat报错 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener

    maven项目启动tomcat报错: java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderLi ...

  8. 【转】Eclipse下启动tomcat报错:/bin/bootstrap.jar which is referenced by the classpath, does not exist.

    转载地址:http://blog.csdn.net/jnqqls/article/details/8946964 1.错误: 在Eclipse下启动tomcat的时候,报错为:Eclipse下启动to ...

  9. 学习中的错误——ubuntu 14.04 LTS 启动eclipse报错

    在ubuntu中启动eclipse报错:(Eclipse:15978): GLib-GIO-CRITICAL **: g_dbus_connection_get_unique_name: assert ...

随机推荐

  1. 一文搞懂Python中的所有数组数据类型

    关于我 一个有思想的程序猿,终身学习实践者,目前在一个创业团队任team lead,技术栈涉及Android.Python.Java和Go,这个也是我们团队的主要技术栈. Github:https:/ ...

  2. MyBatis 返回 Map 字段丢失问题

    问题现象 执行存储过程返回 Map 集合数据,发现有字段丢失情况,仔细研究发现丢失的字段值都为 NULL. 解决办法1: 在查询 SQL 语句中增加 NULL 判断函数 MSSQL: isnull(字 ...

  3. SpringBoot项目中如何异步执行一个方法

    1. SpringBoot上加上开启异步方法注解:@EnableAsync 2. 在需要异步执行的方法上,加上异步方法注解 @Async 3. 测试 5. 测试结果为,访问127.0.0.1:8888 ...

  4. Java IO体系之RandomAccessFile浅析

    Java IO体系之RandomAccessFile浅析 一.RandomAccessFile综述: 1.1RandomAccessFile简介 RandomAccessFile是java Io体系中 ...

  5. 导航页的开发--手机web app开发笔记

    好了,的所有的基础知识已经准备完毕了,现在开始制作引导页.这个引导页需要一个HTML文件,JS文件,一个CSS文件.在HBuilderX中根目录下添加“Guid.html”,在JS文件夹添加“myth ...

  6. 11 python与redis交互

    安装:pip install redis 导入模块:from redis import * 创建StrictRedis 通过init创建对象,指定参数host.port与指定的服务器和端口连接. ho ...

  7. 前端通过Blob实现文件下载

    最近遇到一个需求,需要将页面中的配置信息下载下来供用户方便使用,以前这个场景的需求有时候会放到后端处理,然后给返回一个下载链接.其实并不需要这么麻烦,这样既增大了服务器的负载,也让用户产生了没有必要的 ...

  8. Delphi - 获取文件大小

    GetFileSize获取文件大小 封装成如下函数,可以直接使用: ///函数功能:获取文件大小,单位取KB,小数自动进位 ///参数:sFilePath文件全路径 ///Result: 成功是返回文 ...

  9. macOS平台下Qt应用程序菜单翻译及调整

    一.翻译 在macOS平台上,系统会为应用程序菜单添加一些额外的菜单项.先来看一些典型的例子: 这个是Qt Creator的菜单,系统为应用程序菜单添加了一些桌面显示操作相关的菜单项: 这个是Qt D ...

  10. Codeforces 734D. Anton and Chess(模拟)

    Anton likes to play chess. Also, he likes to do programming. That is why he decided to write the pro ...