0

我想检测每个索引的分片数量何时超过某个阈值。

我使用 Metricbeat 和 Elasticsearch 模块从索引中检索指标数据,并使用 ElastAlert 在每个索引检测到一定数量的分片时发送警报。

起初,我认为我可以以某种方式使用_statsAPI 或_settings端点来访问每个索引的分片数量并在这个数字上运行 ElastAlert。但是,据我所知,ElastAlert 仅扫描_doc索引部分,而不扫描_statsor _settings

正如 Metricbeat 的 Elasticsearch 模块的文档中所写,有一个elasticsearch.cluster.stats.indices.shards.count字段列出了整个集群的分片数量:

elasticsearch.cluster.stats.indices.shards.count
  类型:长

  集群中的分片总数。

我想知道除了每个索引之外是否有类似的东西?如果没有,可能的解决方法是什么?

4

1 回答 1

0

每个索引的分片数量不会随着时间的推移而增长。

默认情况下,特定索引的分片数为1副本数也为1(Elasticsearch 7.X)。

您可以通过映射或使用索引模板指定特定索引的分片数量,否则您将获得由 elasticsearch 定义的默认分片。

请参阅本文此视频,了解如何确定所需的分片和副本数。

于 2019-08-01T14:36:22.017 回答