【问题标题】:Figure out the problematic index in ES cluster?找出 ES 集群中有问题的索引?
【发布时间】:2019-09-17 16:25:14
【问题描述】:

我有托管超过 15 个索引的弹性搜索集群,我有一个 Datadog 集成,它显示了我的弹性搜索集群的下视图。

我们与 DD(datadog) 集成了警报,如果整体 CPU 使用率超过 60%,我们会发出警报,而且在我们的应用程序中,当 elasticsearch 集群处于压力之下时,我们会开始收到警报,例如在这种情况下我们的响应时间超过了配置阈值。

现在我的问题是如何知道哪些索引最消耗 ES 集群资源,以便我们可以限制来自这些索引的请求或优化它们的请求。

我们做过的一些事情:

  1. 查看慢查询日志:这并不是罪魁祸首,因为负载过重或 CPU 使用率高,我们有来自几乎所有大索引的慢查询日志。
  2. 与 DD 仪表板中一样,bulk 队列中有峰值,但这是总体情况,并非特定于特定 ES 索引。

所以我的问题非常简单,我只需要来自 DD 或弹性的一些指标,它可以很容易地告诉我哪些索引在弹性搜索集群上消耗的资源最多。

【问题讨论】:

    标签: performance elasticsearch monitoring datadog


    【解决方案1】:

    很遗憾,我无法向您提出确切的解决方案/解决方法,但您可以查看以下文档/API:

    Indices Stats API

    Cluster Stats API

    Nodes Stats API

    cpu 使用率不包含在导出的字段中,但也许您可以从其他字段中获得高 cpu 使用率行为。

    我希望我能以某种方式帮助你。

    【讨论】:

    • 当然,虽然我知道这些 api 并使用过集群和节点 api,但让我看看索引 api 并回复你。虽然如果我不必点击这些 api 并手动解析它们的 O/P 会更好,而不是使用一些监控工具或 ES api,它本身可以使用最多的资源或获得最高的负载来提供索引在 API 中给出
    • 您不能将范围更改为仅关注单个索引吗?
    • @Val,不是我不能,甚至可以假设如果可能的话,去每个索引看看它们发生了什么,而不是我想要一个排行榜,其中列出了基于其搜索和索引请求的顶级索引。
    • 我会说更改为 Kibana 监控,它提供的正是 ;-)
    • CPU 使用率只能是每个主机/节点,而不是每个索引。索引指标可以是索引/搜索延迟/吞吐量、刷新时间、段数等
    猜你喜欢
    • 1970-01-01
    • 2018-04-02
    • 2011-01-23
    • 1970-01-01
    • 2015-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多