为了在Windows框中增加Elasticsearch的JVM堆大小,我定义了以下环境变量:
ES_HEAP_SIZE =6克
(机器总共有12G RAM。)
我已重启ES并使用_nodes / stat HTTP GET命令查询其内存使用情况。但是,它似乎仍在使用1GB:
记得:{heap_used_in_bytes: 1032367576,
heap_used_percent: 99,
heap_committed_in_bytes: 1037959168,
heap_max_in_bytes: 1037959168,
...
重启后,ES不应该调整其堆内存大小吗?
答案 0 :(得分:10)
来自running ES as a service on windows的说明:
请注意,安装期间可用的环境配置选项将被复制,并将在服务生命周期中使用。这意味着除非重新安装服务,否则在安装后对它们所做的任何更改都将被取消。
如果您不想卸载并重新安装,可以使用服务管理器进行更改。运行>service manager
然后选择“Java”选项卡
更改内存池设置,点击“应用”并重新启动服务。
答案 1 :(得分:6)
卸载并重新安装Elasticsearch Windows服务后,它正确地增加了JVM堆大小。只是重新启动它而不重新安装服务不起作用。
答案 2 :(得分:0)
对于弹性搜索1.5
执行此操作的一种方法是将/bin/elasticsearch.in.sh
文件编辑为默认为1g的其他值。对于您的示例,请更改ES_MAX_MEM=1g
的{{1}}。编辑完成后,重新启动弹性搜索,你应该很好。
ES_MAX_MEM=6g
答案 3 :(得分:0)