当前位置: 首页>>技术教程>>正文


java – Elasticsearch内存问题

, , ,

问题描述

当我也尝试在Ubuntu中启动elasticsearch时,启动脚本给我以下错误:

Java HotSpot(TM) Client VM warning: INFO: os::commit_memory(0x74800000, 201326592, 0) failed; error='Cannot allocate memory' (errno=12)
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (malloc) failed to allocate 201326592 bytes for committing reserved memory.

我已经尝试搜索此方法,但找不到解决方案。如果我重启机器,一切正常工作一天,然后elasticsearch下降并出现此错误。

我已经在elasticsearch.yml文件中设置了bootstrap.mlockall:true属性,并在默认的elasticsearch文件中设置了属性:

ES_HEAP_SIZE=512 (I have 1GB of RAM)
MAX_LOCKED_MEMORY=unlimited

有人知道我需要做什么吗?

谢谢

最佳答案

您已配置了具有1 GB RAM的虚拟机,但是elastic试图从2 GB RAM开始(Elasticsearch版本5.X的默认设置)

为您的VM提供更多内存,或更改Elasticsearch JVM settings /etc/elasticsearch/jvm.options并降低以下参数的值:-Xms512m -Xmx512m

次佳答案

对于Elastic(5.X)的当前版本,您可以在jvm.options文件中配置jvm startup options,该文件通常位于目录/etc/elasticsearch/jvm.options下:

-Xms1g -Xmx1g

希望能帮助到你。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/8313.html,未经允许,请勿转载。