版本: 7.3.2
运行环境:200GB内存、根据官网推荐、ES实例分配堆内存 32GB
问题:当前ES集群节点有两个data节点的堆内存使用已经达到了30GB、因为超过了 ‘indices.breaker.total.limit: 95%’ 所设置的报警阈值、所以集群状态变为黄色了、这个时候应该怎么处理这个 data 节点呢? (重启么?)
master的报错信息:
运行环境:200GB内存、根据官网推荐、ES实例分配堆内存 32GB
问题:当前ES集群节点有两个data节点的堆内存使用已经达到了30GB、因为超过了 ‘indices.breaker.total.limit: 95%’ 所设置的报警阈值、所以集群状态变为黄色了、这个时候应该怎么处理这个 data 节点呢? (重启么?)
master的报错信息:
[2021-05-09T08:04:15,824][DEBUG][o.e.a.a.c.n.s.TransportNodesStatsAction] [10-10-master] failed to execute on node [aYvqn5ttSS2CjIgZ5dL6tw]
org.elasticsearch.transport.RemoteTransportException: [data-es-group1-200-76-1][10.10.10.1:9300][cluster:monitor/nodes/stats[n]]
Caused by: org.elasticsearch.common.breaker.CircuitBreakingException: [parent] Data too large, data for [<transport_request>] would be [32839670332/30.5gb], which is larger than the limit of [31621696716/29.4gb], real usage: [32839666992/30.5gb], new bytes reserved: [3340/3.2kb], usages [request=0/0b, fielddata=0/0b, in_flight_requests=72850/71.1kb, accounting=160109549/152.6mb]
7 个回复
匿名用户
赞同来自: lewis
200GB内存的服务器,请放心的把内存调整到100GB. 生产环境50台服务器验证过,没有任何问题.
最好把200GB的服务器拆分开,内存太多了没用的,ES吃CPU,吃内存,吃磁盘,吃网卡,单个硬件资源过剩就是浪费,需要匹配硬件资源才行.
不能瞎配.
最佳实践是,CPU 20/40核心(40/80线程),内存64/128GB,磁盘10TB/20TB(最好SSD),网卡2/4块千M(最好万M)
JiangJibo - 喊我雷锋
赞同来自:
zmc - ES PAAS、JuiceFS
赞同来自:
你这个报错是请求需要使用的内存过大触发的熔断。
一个实例用到30G,是不是用了fileddata什么的,或者数据太大导致FST过大,如果有fileddata这种建议优化掉,如果单纯数据大,只能横向扩展了
lewis
赞同来自:
Ombres
赞同来自:
试试这个,正常情况下能解决大部分问题
-XX:+UseG1GC
-XX:G1ReservePercent=25
-XX:InitiatingHeapOccupancyPercent=30
lewis
赞同来自:
Janson
赞同来自: