gpt4 book ai didi

elasticsearch - 将Elasticsearch数据保留限制在磁盘空间以下

转载 作者:行者123 更新时间:2023-12-02 22:56:12 25 4
gpt4 key购买 nike

场景:

  • 我们使用Elasticsearch和logstash对流量适中的系统进行应用程序日志
  • 该系统每天产生约200gb的日志
  • 我们使用4个实例分片;并希望保留大约三天的日志
  • 因此,我们实现了每天运行的“清理”系统,该系统会删除所有3天之前的数据

  • 到现在为止还挺好。但是,几天前,某些子系统产生了持续不断的数据日志峰值,导致在几个小时内填满了所有可用磁盘空间,从而使群集变成红色。这也意味着,由于磁盘已满,整个群集已关闭,因此清理系统无法连接到ES。这是非常有问题的,因为它限制了我们对正在发生的事情的可见性,并且阻止了我们首先了解导致此问题的原因的能力。

    在这里进行根本原因分析,会弹出一些问题:
  • 当群集状态为红色时,如何查看例如Kibana中的系统?
  • 如果没有更多空间(而不是状态=红色),我们如何告诉ES丢弃(最早的)日志?
  • 用什么方式可以确保这种情况不再发生?
  • 最佳答案

    基于日期的索引模式在棘手的负载下非常棘手。有两件事可以将其结合起来以实现平滑的设置,而无需人工干预:

  • 切换到rollover indices。然后,您可以定义要在现有索引达到X GB后创建一个新索引。然后,您不必再担心每天的日志量,而只需保留磁盘空间就可以保留尽可能多的索引(并保留一些缓冲区/微调watermarks)。
  • 为了自动进行过渡,删除索引以及可选地设置别名,我们提供了Elastic Curator:
  • Example for rollover
  • Example for delete index,但您想将其与count filtertype
  • 结合使用

    PS:很快将有另一个解决方案,称为索引生命周期管理。它直接内置在Elasticsearch中,可以通过Kibana进行配置,但此刻就在眼前。

    关于elasticsearch - 将Elasticsearch数据保留限制在磁盘空间以下,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53992031/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com