问题描述
当我也尝试在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
希望能帮助到你。