【问题标题】:Elastic search down after several months几个月后弹性搜索下降
【发布时间】:2020-12-20 04:15:07
【问题描述】:

我有一个弹性搜索集群,其中 2 个节点在 2 核 CPU 8GB ram 实例上运行。每个节点都有传入的参数“ES_JAVA_OPTS=-Xms3g -Xmx3g”。我有 4 个索引,每个索引有 2 个分片和 1 个副本。 2个月后,它下降了。检查了实例监控,没有看到任何 CPU 或内存峰值。磁盘有足够的可用空间。检查了es日志。我唯一看到的是

[gc][2845340] overhead, spent [339ms] collecting in the last [1s]

知道为什么吗?

【问题讨论】:

    标签: elasticsearch


    【解决方案1】:

    当垃圾收集器开始报告它花费了大约 30% 的时间进行收集时,这通常意味着没有足够的堆。

    您应该稍微增加堆,直到 GC 停止报告。您可以将堆增加到可用内存的一半,但不能超过 30GB

    为此,请更改以下设置,并确保 Xms 始终等于 Xmx 并且永远不会超过 30。

    ES_JAVA_OPTS=-Xms4g -Xmx4g
    

    【讨论】:

    • 感谢您的回复。实例上只有 8GB 内存。如果我将每个节点更改为 4gb 并且我有 2 个节点。考虑到操作系统会保留一些内存,它会耗尽内存吗?
    • 好的,那么问题是,如果您的实例上有 8GB 的​​ RAM,并且该实例上有两个节点,那么您应该只为每个节点分配 2GB。这很可能是您看到垃圾收集增加的原因,即因为您的堆空间不足。话虽如此,在同一个实例上运行两个节点通常是个坏主意,它们最终总是会争夺资源。
    猜你喜欢
    • 2017-01-02
    • 2023-03-03
    • 2016-10-22
    • 2016-12-16
    • 2021-11-23
    • 2020-09-05
    • 1970-01-01
    • 2018-10-26
    • 1970-01-01
    相关资源
    最近更新 更多