美文网首页Elasticsearch
Docer启动ElasticSearch报错

Docer启动ElasticSearch报错

作者: 皮多堡 | 来源:发表于2019-08-16 17:52 被阅读0次
  • 报错信息
ERROR: [1] bootstrap checks failed
[1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
[2019-07-27T01:13:57,788][INFO ][o.e.n.Node               ] [92PS5zg] stopping ...
[2019-07-27T01:13:57,819][INFO ][o.e.n.Node               ] [92PS5zg] stopped
[2019-07-27T01:13:57,819][INFO ][o.e.n.Node               ] [92PS5zg] closing ...
[2019-07-27T01:13:57,873][INFO ][o.e.n.Node               ] [92PS5zg] closed

  • 解决办法

在宿主机执行

sysctl -w vm.max_map_count=262144
  • 原因分析:

vm.max_map_count参数,是允许一个进程在VMAs拥有最大数量(VMA:虚拟内存地址, 一个连续的虚拟地址空间),当进程占用内存超过时, 直接OOM。

elasticsearch占用内存较高。官方要求max_map_count需要配置到最小262144。

max_map_count配置文件写在系统的/proc/sys/vm中

通过docker inspect命令, 可查看docker使用宿主机的/proc/sys作为只读路径之一

     "ReadonlyPaths": [
                "/proc/bus",
                "/proc/fs",
                "/proc/irq",
                "/proc/sys",
                "/proc/sysrq-trigger"
            ]

说明镜像使用宿主机的max_map_count参数。因此直接修改宿主机的max_map_count参数即可

  • 重启ElasticSearch容器

参考:官方文档

相关文章

网友评论

    本文标题:Docer启动ElasticSearch报错

    本文链接:https://www.haomeiwen.com/subject/qgiqsctx.html