docker启动elasticsearch失败--jvm内存不足解决方案

centos下载完elasticsearch并修改完配置后运行docker命令:

docker run –name es1 -p 9200:9200 -p 9300:9300 -d -v
/docker/es/esmaster/es.yml:/usr/share/elasticsearch/config/elasticsearch.yml
-v /docker/es/esmaster/data:/usr/share/elasticsearch/data elasticsearch

发现没有启动成功,去除上面命令的-d后打印错误如下

Java HotSpot(TM) 64-Bit Server VM warning: INFO:
os::commit_memory(0x0000000085330000, 2060255232, 0) failed;
error=’Cannot allocate memory’ (errno=12)

经过一番查找发现这是由于elasticsearch5.0默认分配jvm空间大小为2g,内存不足以分配导致。

解决方法就是修改jvm空间分配
运行命令:

find /var/lib/docker/overlay/ -name jvm.options

查找jvm.options文件,找到后进入使用vi命令打开jvm.options如下:

将

-Xms2g
-Xmx2g
1
2
修改为

-Xms512m
-Xmx512m
1
2
保存退出即可。再次运行创建运行elasticsearch命令,成功启动。

https://blog.csdn.net/qq_35022052/article/details/81584014

原文地址:https://www.cnblogs.com/jasonzeng/p/11584754.html

时间: 2024-11-08 10:19:37

docker启动elasticsearch失败--jvm内存不足解决方案的相关文章

docker启动 elasticsearch 修改 xmx xms 堆内存大小修改

用docker 安装的elasticsearch 5.6版本默认堆内存最大设置的2G 可以通过如下方法修改 [[email protected] logs]# find /var/lib/docker/ -name jvm.options /var/lib/docker/overlay2/f394fa1197ace3d592bb37738b95335fc722950c6a39167a0106586f0d2f2382/diff/etc/elasticsearch/jvm.options/var/l

centos 启动 elasticsearch 失败集

环境: elasticsearch 6.5.2, java 连接失败 启动后当你 使用 curl http://localhost:9200 测试时,得到如下结果 Curl: (7) Failed connect to localhost:9200; Connection refused 这个问题一般是其他问题导致的,请看你启动日志,如果用的管理服务工具来启动的,则看它的日志,我这里是 systemctl ,然后命令以及输出结果是 [email protected] ~]# systemctl

bat启动时设置JVM内存大小

问题现象:服务器上的应用出现java.lang.OutOfMemoryError: Java heap space,连带出现h2db获取新数据库链接出错("Failed to acquire connection. Sleeping for 7000ms"), 应用是采用bat文件启动. 解决:其他同志说的设置JAVA_OPTS系统环境变量的方法,需要在bat里指定该环境变量名,我用的是直接在bat里设置添加-Xmx1024m. bat内容:                    ja

记录一次OracleJDK开发的项目发部到Linux中使用OpenJDK启动后失败的错误的解决方案

一.现象 基于JAVA SpringBoot2.0.4的项目,发部后项目发部后,放到OpenJDK环境中运行时,提示下列错误: 2019-10-22 10:03:55 [main] WARN  o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.sp

docker 启动失败

问题 docker 启动服务失败 场景 在Ubuntu中,将docker切换阿里镜像后,运行如下两条命令: sudo systemctl daemon-reload sudo systemctl restart docker 在重启docker服务这,报错信息如下: Job for docker.service failed because the control process exited with error code. See "systemctl status docker.servi

JVM内存监视手段和内存溢出解决方案

引言 本文仅关注一些常见的虚拟机内存监视手段,以及JVM运行时数据区各个部分内存溢出的发生和对应的解决方案,总体来说属于概括性总结,涉及相对不是很深入,目的是让自己和其它初学者有一个框架性.概念性的了解,当遇到问题时有迹可循.不至于不知所措. 一.虚拟机内存监视手段 虚拟机常出现的问题包括:内存泄露.内存溢出.频繁GC导致性能下降等,导致这些问题的原因可以通过下面虚拟机内存监视手段来进行分析,具体实施时可能需要灵活选择,同时借助两种甚至更多的手段来共同分析. 比如GC日志可以分析出哪些GC较为频

tomcat启动时JVM内存大小,以免出现内存溢出

问题: 主要是2个内存溢出的错误. 首先是:java.lang.OutOfMemoryError: Java heap space 其次是:java.lang.OutOfMemoryError: PermGen space 最终解决办法[我是4G内存,请适当修改大小]: [Windows]在catalina.bat的第一行增加: set JAVA_OPTS=-Xms512m -Xmx900m -XX:PermSize=128M -XX:MaxNewSize=256m -XX:MaxPermSiz

安装完android studio,启动时碰到"failed to load jvm dll"的解决方案

安装完android studio,启动时碰到"failed to load jvm dll"的解决方案 安装Microsoft Visual C++ 2010 Redistributable Package 32 bit: http://www.microsoft.com/download/en/details.aspx?id=5555 64 bit: http://www.microsoft.com/download/en/details.aspx?id=14632 然后再运行An

win7 docker Toolbox 启动Docker Quickstart Terminal 失败!

解决办法: 在windows下安装docker Toolbox 启动Docker Quickstart Terminal 失败! 主要是用如下文件启动,临时解决,或设置环境变量 原文地址:https://www.cnblogs.com/shawnhu/p/9678660.html