elasticsearch 2.4 jvm.options在macos mojave上被忽略(自制安装)

olqngx59  于 2021-06-15  发布在  ElasticSearch
关注(0)|答案(1)|浏览(341)

我已经通过自制在mac上安装了elasticsearch 2.4。我想看看是否可以增加elasticsearch的jvm堆大小。
我在中更改了以下行(将堆大小设置为8gigs) /usr/local/etc/elasticsearch/jvm.options ```
-Xms8g
-Xmx8g

然后使用 `brew services restart elasticsearch@2.4` 然后跑 `curl localhost:9200/_nodes/stats/jvm?pretty` 检查jvm大小,但我返回:

"mem" : {
"heap_used_in_bytes" : 144690472,
"heap_used_percent" : 13,
"heap_committed_in_bytes" : 259522560,
"heap_max_in_bytes" : 1038876672,
"non_heap_used_in_bytes" : 62484680,
"non_heap_committed_in_bytes" : 65093632,
...

为什么我的 `Xms8g` 以及 `Xmx8g` 中忽略的标志 `jvm.options` 我该怎么做才能让艾尔莎尊重他们呢?
我的行动是基于:如何改变elasticsearch的最大内存大小
rta7y2nd

rta7y2nd1#

我想出来了!
您需要更改通过 plist 用于启动elasticsearch。
/usr/local/Cellar/elasticsearch@2.4/2.4.6/homebrew.mxcl.elasticsearch@2.4.plist ,在 <key>EnvironmentVariables</key> 键,添加:

<dict>
  <key>ES_HEAP_SIZE</key>
  <string>2g</string>
</dict>

小心,还有一个 plist 存在于 ~/Library/LaunchAgents/homebrew.mxcl.elasticsearch.plist . 更改它不会起任何作用,因为它会被 brew services 重新启动时。
同样值得注意的是,有两个 jvm.options 系统上可见与elasticsearch相关的文件:
/usr/local/Cellar/elasticsearch@2.4/2.4.6/libexec/config /usr/local/etc/elasticsearch/jvm.options 看起来其中一个只是与另一个的符号链接,而更改其中任何一个的内存标志完全没有任何作用。

相关问题