Добрый день!
Раньше я использовал elasticsearch 5.1 на одной виртуальной машине (4Gb RAM, 4 CPU). Heap 1Gb (при 2-х почему-то эластик вылетал), объем данных 20Gb. Все работало долго и стабильно. Затем решил обновиться до последней версии и перенести данные в новое место.
Настроил тестовый кластер из 3 нод (мастер-нода и 2 дата-ноды - 4Gb RAM, 2 CPU, Centos7.5). Все настройки в соответствии с рекомендованными в документации.
bootstrap.memory_lock: true, minimum_master_nodes: 2, -Xms2g, -Xmx2g
.
После 3-х часовой индексации данных (индекс - 3 шарды, 1 реплика) получаю OutOfMemoryError: Java heap space
. Никаких поисковых запросов нет вообще. На одной старой ноде в 5.1 все работает без проблем вместе с поиском.
Подскажите, пожалуйста, в чем может быть причина такого поведения и как ее исправить?
Последние логи:
нода 1
[2018-09-27T02:21:23,750][ERROR][o.e.b.ElasticsearchUncaughtExceptionHandler] [node-1] fatal error in thread [elasticsearch[node-1][refresh][T#1]], exiting
java.lang.OutOfMemoryError: Java heap space
at org.apache.lucene.util.packed.DirectMonotonicWriter.<init>(DirectMonotonicWriter.java:56) ~[lucene-core-7.4.0.jar:7.4.0 9060ac689c270b02143f375de0348b7f626adebc - jpountz - 2018-06-18 16:51:45]
[2018-09-27T02:21:23,752][ERROR][o.e.b.ElasticsearchUncaughtExceptionHandler] [node-1] fatal error in thread [elasticsearch[node-1][search][T#4]], exiting
java.lang.OutOfMemoryError: Java heap space
at org.apache.lucene.util.packed.DirectMonotonicReader.getInstance(DirectMonotonicReader.java:96) ~[lucene-core-7.4.0.jar:7.4.0 9060ac689c270b02143f375de0348b7f626adebc - jpountz - 2018-06-18 16:51:45]
нода 2
[2018-09-27T02:10:10,784][WARN ][o.e.m.j.JvmGcMonitorService] [node-2] [gc][219589] overhead, spent [6s] collecting in the last [6.2s]
[2018-09-27T02:16:35,849][WARN ][o.e.t.n.Netty4Transport ] [node-2] send message failed [channel: NettyTcpChannel{localAddress=0.0.0.0/0.0.0.0:9300, remoteAddress=/10.135.94.206:36596}]
java.nio.channels.ClosedChannelException: null
at io.netty.channel.AbstractChannel$AbstractUnsafe.write(...)(Unknown Source) ~[?:?]
[2018-09-27T02:16:02,863][ERROR][o.e.b.ElasticsearchUncaughtExceptionHandler] [node-2] fatal error in thread [elasticsearch[node-2][search][T#2]], exiting
java.lang.OutOfMemoryError: Java heap space
at java.util.stream.SpinedBuffer.ensureCapacity(SpinedBuffer.java:143) ~[?:1.8.0_181]
at java.util.stream.SpinedBuffer.increaseCapacity(SpinedBuffer.java:154) ~[?:1.8.0_181]
at java.util.stream.SpinedBuffer.accept(SpinedBuffer.java:258) ~[?:1.8.0_181]
[2018-09-27T02:22:13,604][ERROR][o.e.b.ElasticsearchUncaughtExceptionHandler] [node-2] fatal error in thread [elasticsearch[node-2][search][T#1]], exiting
java.lang.OutOfMemoryError: Java heap space
есть еще heapdump (2,6Gb)