0x00 概述
Prometheus通过expoeter监控Elasticsearch集群,比传统的APM或者zabbix监控更加深入;配合exporter可已经详细监控这个es集群的信息。
本文主要讲述使用 Prometheus监控ES,梳理核心监控指标并构建 Dashboard ,当集群有异常或者节点发生故障时,可以根据性能图表以高效率的方式进行问题诊断,再对核心指标筛选添加告警。
Elasticsearch本身提供了大量的指标,可以帮助我们进行故障预检,并在遇到诸如节点不可用、JVM OutOfMemoryError和垃圾回收时间过长等问题时采取必要措施。 通常需要监控的几个关键领域是:
查询和索引(indexing)性能
内存分配和垃圾回收
主机级别的系统和网络指标
集群健康状态和节点可用性
资源饱和度和相关错误
梳理promethues官方的提供的ElasticSearch exporter提供的核心metrics监控以上关键领域
0x01 集群健康和节点可用性
通过cluster healthAPI可以获取集群的健康状况,可以把集群的健康状态当做是集群平稳运行的重要信号,一旦状态发生变化则需要引起重视;API返回的一些重要参数指标及对应的prometheus监控项如下
返回参数备注metric name
status
集群状态,green( 所有的主分片和副本分片都正常运行)、yellow(所有的主分片都正常运行,但不是所有的副本分片都正常运行)red(有主分片没能正常运行)
elasticsearch_cluster_health_status
number_of_nodes/number_of_data_n