es

如何设置分配给elasticsearch的内存大小?

RT
已邀请:

Rubricate - hi

赞同来自: kennywu76 china stab

在 ES_HOME/bin/elasticsearch 里面

lendo

赞同来自: Rubricate stab

./elasticsearch -Xmx10g -Xms10g &

toxic_07

赞同来自: 超超大猴子

官方建议,设置为系统内存的一半,但不要超过32gb。

jingkyks - 水果铅笔2B橡皮

赞同来自:

建议值为系统内存的一半

slei - ITDN

赞同来自:

vim /root/elasticsearch/bin/elasticsearch.in.sh

#!/bin/sh

ES_CLASSPATH=$ES_CLASSPATH:$ES_HOME/lib/elasticsearch-1.4.4.jar:$ES_HOME/lib/*:$ES_HOME/lib/sigar/*


下三行设置内存
ES_MIN_MEM=10g
ES_MAX_MEM=10g
ES_HEAP_NEWSIZE=1g





if [ "x$ES_MIN_MEM" = "x" ]; then
ES_MIN_MEM=256m
fi
if [ "x$ES_MAX_MEM" = "x" ]; then
ES_MAX_MEM=1g
fi
if [ "x$ES_HEAP_SIZE" != "x" ]; then
ES_MIN_MEM=$ES_HEAP_SIZE
ES_MAX_MEM=$ES_HEAP_SIZE
fi

Jellybean

赞同来自:

linux:  /bin/elasticsearch.in.sh中设置,建议为机器内存一半,且最大最小内存最好相等,防止经常gc。

qq123 - 90后IT精英

赞同来自:

一般都是给现有物理内存的一半

Jea - 一只猿

赞同来自:

楼上各位的答案在设置之后并不会生效, 因为没有权限去锁定内存, 需要更改配置文件的就没有人说 /etc/security/limits.conf吗? 
不给运行es的用户memlock权限怎么锁内存呢?
* soft nofile 65535      #这个是默认的
* hard nofile 65535 #这个也是默认的
elastic - memlock unlimited #给es权限去锁定内存

要回复问题请先登录注册