docker启动elasticsearch时内存不足问题及解决方法

2025-05-27 0 89

问题

docker安装并启动elasticsearch时内存不足

系统centos8(阿里云ecs服务器)

?

1

2
[root@iZ2zeczvvb79boy368xppwZ ~]# cat /etc/redhat-release

CentOS Linux release 8.1.1911 (Core)

安装过程

?

1
docker pull elasticsearch:6.4.0

修改虚拟机内存(貌似没有效果)

?

1
sysctl -w vm.max_map_count=262144

使用docker run命令跑容器

?

1

2

3

4

5

6
docker run -p 9200:9200 -p 9300:9300 --name elasticsearch \\

-e "discovery.type=single-node" \\

-e "cluster.name=elasticsearch" \\

-v /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins \\

-v /mydata/elasticsearch/data:/usr/share/elasticsearch/data \\

-d elasticsearch:6.4.0

docker ps查看容器并没有启动

?

1

2

3

4

5

6
[root@iZ2zeczvvb79boy368xppwZ ~]# docker ps

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

edfc400862eb rabbitmq:3.7.15 "docker-entrypoint.s…" 14 hours ago Up 14 hours 0.0.0.0:4369->4369/tcp, 0.0.0.0:5671-5672->5671-5672/tcp, 0.0.0.0:15671-15672->15671-15672/tcp, 0.0.0.0:25672->25672/tcp rabbitmq

2ae2f3f8dc1f nginx:1.10 "nginx -g 'daemon of…" 2 weeks ago Up 2 weeks 0.0.0.0:80->80/tcp, 443/tcp nginx

164e4e7561df redis:3.2 "docker-entrypoint.s…" 2 weeks ago Up 2 weeks 0.0.0.0:6379->6379/tcp redis

eeabe57f1f21 mysql:5.7 "docker-entrypoint.s…" 2 weeks ago Up 2 weeks 0.0.0.0:3306->3306/tcp, 33060/tcp mysql

docker ps -a 查看容器确实创建了

?

1

2

3

4

5

6

7
[root@iZ2zeczvvb79boy368xppwZ ~]# docker ps -a

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

767829ae1d7c elasticsearch:6.4.0 "/usr/local/bin/dock…" About a minute ago Exited (1) About a minute ago elasticsearch

edfc400862eb rabbitmq:3.7.15 "docker-entrypoint.s…" 14 hours ago Up 14 hours 0.0.0.0:4369->4369/tcp, 0.0.0.0:5671-5672->5671-5672/tcp, 0.0.0.0:15671-15672->15671-15672/tcp, 0.0.0.0:25672->25672/tcp rabbitmq

2ae2f3f8dc1f nginx:1.10 "nginx -g 'daemon of…" 2 weeks ago Up 2 weeks 0.0.0.0:80->80/tcp, 443/tcp nginx

164e4e7561df redis:3.2 "docker-entrypoint.s…" 2 weeks ago Up 2 weeks 0.0.0.0:6379->6379/tcp redis

eeabe57f1f21 mysql:5.7 "docker-entrypoint.s…" 2 weeks ago Up 2 weeks 0.0.0.0:3306->3306/tcp, 33060/tcp mysql

查看日志docker logs -f elasticsearch命令查看日志发现jvm内存不足

?

1

2

3

4

5

6

7

8
[root@iZ2zeczvvb79boy368xppwZ ~]# docker logs -f elasticsearch

OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.

OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x00007ebf15330000, 549668585472, 0) failed; error='Not enough space' (errno=12)

#

# There is insufficient memory for the Java Runtime Environment to continue.

# Native memory allocation (mmap) failed to map 549668585472 bytes for committing reserved memory.

# An error report file with more information is saved as:

# logs/hs_err_pid1.log

解决方法

修改jvm.options文件配置
首先查找jvm.options文件位置(每个服务器的位置可能不同)

?

1

2
[root@iZ2zeczvvb79boy368xppwZ ~]# find / -name jvm.options

/var/lib/docker/overlay2/d399872a3517b4d4acb0d2f70d0625c0f38251ffe5819a1cea00f8213de3e7f5/diff/usr/share/elasticsearch/config/jvm.options

vim进入文件修改虚拟机最小内存

?

1
[root@iZ2zeczvvb79boy368xppwZ ~]# vim /var/lib/docker/overlay2/d399872a3517b4d4acb0d2f70d0625c0f38251ffe5819a1cea00f8213de3e7f5/diff/usr/share/elasticsearch/config/jvm.options

找到-Xms属性,修改成512m(我的elasticsearch:6.4.0默认为1g)

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23
## JVM configuration

################################################################

## IMPORTANT: JVM heap size

################################################################

##

## You should always set the min and max JVM heap

## size to the same value. For example, to set

## the heap to 4 GB, set:

##

## -Xms4g

## -Xmx4g

##

## See https://www.elastic.co/guide/en/elasticsearch/reference/current/heap-size.html

## for more information

##

################################################################

# Xms represents the initial size of total heap space

# Xmx represents the maximum size of total heap space

-Xms512m

-Xmx512m

保存并退出

vim中按i进入编辑模式,按ESC退出编辑模式,按:进入命令模式,然后在底部命令行输入w为保存,q为退出,q!为强制退出。
再次启动容器,docker ps查看容器启动成功

?

1

2

3

4

5

6

7
[root@iZ2zeczvvb79boy368xppwZ ~]# docker ps

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

f5c4ed61196b elasticsearch:6.4.0 "/usr/local/bin/dock…" 15 minutes ago Up 15 minutes 0.0.0.0:9200->9200/tcp, 0.0.0.0:9300->9300/tcp elasticsearch

edfc400862eb rabbitmq:3.7.15 "docker-entrypoint.s…" 15 hours ago Up 15 hours 0.0.0.0:4369->4369/tcp, 0.0.0.0:5671-5672->5671-5672/tcp, 0.0.0.0:15671-15672->15671-15672/tcp, 0.0.0.0:25672->25672/tcp rabbitmq

2ae2f3f8dc1f nginx:1.10 "nginx -g 'daemon of…" 2 weeks ago Up 2 weeks 0.0.0.0:80->80/tcp, 443/tcp nginx

164e4e7561df redis:3.2 "docker-entrypoint.s…" 2 weeks ago Up 2 weeks 0.0.0.0:6379->6379/tcp redis

eeabe57f1f21 mysql:5.7 "docker-entrypoint.s…" 2 weeks ago Up 2 weeks 0.0.0.0:3306->3306/tcp, 33060/tcp mysql

总结

到此这篇关于docker启动elasticsearch时内存不足问题及解决方法的文章就介绍到这了,更多相关docker启动elasticsearch内存不足内容请搜索快网idc以前的文章或继续浏览下面的相关文章希望大家以后多多支持快网idc!

原文链接:https://blog.csdn.net/weixin_40660221/article/details/107656626

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 行业资讯 docker启动elasticsearch时内存不足问题及解决方法 https://www.kuaiidc.com/65703.html

相关文章

发表评论
暂无评论