elasticsearch启动错误整理
一、elasticsearch错误复现
(一)、环境
配置环境
OS:CentOS 7.4 64bit
elasticsearch版本:5.4.
hostname:elk--
ip:10.18.43.170
java版本:java -version "1.8.0_181"
(二)、错误复现
首先要获取必须的软件包
wget -P /var/ftp/ https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.4.1.tar.gz wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b8442fe848ef90c96a2fad6ed6d1/jdk-8u181-linux-x64.tar.gz"
环境配置
sed -ri '/^SELINUX/cSELINUX=disabled' /etc/selinux/config
setenforce firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --permanent --add-port=/tcp
firewall-cmd --permanent --add-port=/tcp
firewall-cmd --reload
JDK配置
[root@elk-- ~]# tar xf jdk-8u181-linux-x64.tar.gz -C /usr/local/
[root@elk-- ~]# ln -s /usr/local/jdk1..0_181 /usr/local/java
[root@elk-- ~]# cat /etc/profile.d/java.sh
JAVA_HOME=/usr/local/java
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME PATH [root@elk-- ~]# source /etc/profile
[root@elk-- ~]# env | grep JAVA
JAVA_HOME=/usr/local/java [root@elk-- ~]# java -version
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) -Bit Server VM (build 25.181-b13, mixed mode)
elasticsearch配置
useradd elk
su - elk
mv /tmp/elasticsearch-5.4..tar.gz /home/elk
tar xf elasticsearch-5.4..tar.gz
配置文件elasticsearch-5.4.1/config/elasticsearch.yml
[elk@elk-- ~]$ egrep "^[^#$]" elasticsearch-5.4./config/elasticsearch.yml
cluster.name: my-elk
node.name: elk1
path.data: /tmp/data
path.logs: /tmp/logs
bootstrap.memory_lock: false
network.host: 0.0.0.0
http.port:
elasticsearch不允许root用启动,我使用给他专门创建的用户elk用来启动它
[elk@elk-- ~]$ elasticsearch-5.4./bin/elasticsearch -d
(三)、日志输出
[--27T19::,][ERROR][o.e.b.Bootstrap ] [elk1] node validation exception
[] bootstrap checks failed
[]: max file descriptors [] for elasticsearch process is too low, increase to at least []
[]: memory locking requested for elasticsearch process but memory is not locked
[]: max virtual memory areas vm.max_map_count [] is too low, increase to at least []
二、解决方法
错误一:
[]: max file descriptors [] for elasticsearch process is too low, increase to at least []
解决方法:
打开/etc/security/limits.conf文件,在末尾添加以下两行并保存:
* soft nofile //*表示任意用户,这里是elasticsearch报的错,也可以直接填运行elk的用户;
* hard nofile
错误二:
[]: memory locking requested for elasticsearch process but memory is not locked
解决方法:
修改elasticsearch.yml文件
bootstrap.memory_lock : false
错误三:
[]: max virtual memory areas vm.max_map_count [] is too low, increase to at least []
解决方法:
修改内核配置/etc/sysctl.d/99-sysctl.conf添加vm.max_map_count=262144
sysctl -w vm.max_map_count=
sysctl -p
错误四:
os::commit_memory(0x00000001006cd000, , ) failed; error=’Cannot allocate memory’ (errno=)
解决方法:
提供内存不足,增大主机内存或者减小elasticsearch的内存大小
[elk@elk-- ~]$ grep -v "^#" elasticsearch-5.4./config/jvm.options |grep -v "^$"
-Xms2g
-Xmx2g
-XX:+UseConcMarkSweepGC
-XX:CMSInitiatingOccupancyFraction=
-XX:+UseCMSInitiatingOccupancyOnly
-XX:+DisableExplicitGC
-XX:+AlwaysPreTouch
-server
-Xss1m
-Djava.awt.headless=true
-Dfile.encoding=UTF-
-Djna.nosys=true
-Djdk.io.permissionsUseCanonicalPath=true
-Dio.netty.noUnsafe=true
-Dio.netty.noKeySetOptimization=true
-Dio.netty.recycler.maxCapacityPerThread=
-Dlog4j.shutdownHookEnabled=false
-Dlog4j2.disable.jmx=true
-Dlog4j.skipJansi=true
-XX:+HeapDumpOnOutOfMemoryError
修改完成之后,建议退出当前登录用户,在重新登录,然后在重新启动elasticsearch,就可以一了,(注:tar包和unzip包,都是不允许elasticsearch程序让root用户来运行的,我们必须提前创建一个用户!)
elasticsearch启动错误整理的更多相关文章
- ElasticSearch启动错误处理方法
在配置完elasticsearch,启动程序会包如下错误: [elk@localhost bin]$ ./elasticsearch ... ... ERROR: [3] bootstrap chec ...
- 记一次环境变量导致的elasticsearch启动错误:max file descriptors [65535] for elasticsearch process is too low, incre
问题描述,elasticsearch启动时报max file descriptors错误: [hadoop@node-33 elasticsearch-5.4.0]$ bin/elasticsearc ...
- elasticsearch启动错误解决
es启动默认不能使用root用户,所以需要新创建一个用户来启动. 启动时可能出现的问题: [1]: max file descriptors [4096] for elasticsearch proc ...
- elasticsearch启动错误
requires kernel 3.5+ with CONFIG_SECCOMP and CONFIG_SECCOMP_FILTER compiled java.lang.UnsupportedOpe ...
- elasticsearch启动错误解决办法
1.max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144] 解决: [r ...
- elasticsearch启动时遇到的错误
elasticsearch启动时遇到的错误 问题翻译过来就是:elasticsearch用户拥有的内存权限太小,至少需要262144: 解决: 切换到root用户 执行命令: sysctl -w vm ...
- Linux安装ElasticSearch启动报错的解决方法
Linux安装ElasticSearch后,ElasticSearch是不能用root用户启动的,以root用户启动会报错Refer to the log for complete error det ...
- ELK 学习笔记之 elasticsearch启动时Warning解决办法
elasticsearch启动时Warning解决办法: 转载:http://www.dajiangtai.com/community/18136.do?origin=csdn-geek&dt ...
- SpringBoot启动使用elasticsearch启动异常:Received message from unsupported version:[2.0.0] minimal compatible
SpringBoot启动使用elasticsearch启动异常:Received message from unsupported version:[2.0.0] minimal compatible ...
随机推荐
- Docker中使用CentOS7镜像
因后面会将操作系统从CentOS6.4升级到CentOS7,先试用下CentOS7. 启动容器服务 systemctl start docker.service 下载CentOS7 镜像 [roo ...
- isinstance()函数判断数据类型
判断是否是字符串 a = b = " print(isinstance(a,str)) print(isinstance(b,str)) False True 判断是否是列表 a = [,, ...
- 透视BlueStore存储结构:如何根据文件名从裸盘提取文件内容
在FileStore下,用户文件经过切分对象块后最终存放在了单机文件系统(xfs .ext4等)中,我们可以较容易地找到这些对象块对应的文件,然后提取这些对象块文件后组装成用户文件.然而,BlueSt ...
- 常用的URL Scheme
系统 短信 sms:// app store itms-apps:// 电话 tel:// 备忘录 mobilenotes:// 设置 prefs:root=SETTING E-Mail MESSAG ...
- 【深入浅出-JVM】(34):CMS 回收器
概念 Concurrent Mark Sweep 并发标记清除(多线程并且用的标记清除算法),会造成大量的内存碎片,离散的可用空间无法分配较大的对象 流程 参数 -XX:-CMSPrecleaning ...
- 关系型数据库MySql简介
什么是关系型数据库? 数据库就是用来存储数据的仓库,是一种特殊的文件. 根据存储的数据不同,划分为关系型数据库和非关系型数据库. 关系型数据库就是指 建立在关系模型基础上的数据库,通俗来讲这种数据库就 ...
- Spring Cloud Alibaba | Nacos配置管理
目录 Spring Cloud Alibaba | Nacos配置管理 1. pom.xml 项目依赖 2. 在 bootstrap.properties 中配置 Nacos server 的地址和应 ...
- Spark 中 RDD的运行机制
1. RDD 的设计与运行原理 Spark 的核心是建立在统一的抽象 RDD 之上,基于 RDD 的转换和行动操作使得 Spark 的各个组件可以无缝进行集成,从而在同一个应用程序中完成大数据计算任务 ...
- MyBatis从入门到精通:第一章配置文件log4j.properties
配置文件: #全局配置 log4j.rootLogger=ERROR,stdout #MyBatis日志配置 log4j.logger.tk.mybatis.simple.mapper=TRACE # ...
- java调用新浪接口根据Ip查询所属地区
import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import ...