ETCD监控方法以及核心指标

文章目录

  • [1. 监控指标采集](#1. 监控指标采集)
    • [1.1 监控指标采集](#1.1 监控指标采集)
    • [1.2 配置promethues采集和大盘](#1.2 配置promethues采集和大盘)
  • [2. 核心告警指标](#2. 核心告警指标)
  • [3. 参考文章](#3. 参考文章)

探讨etcd的监控数据采集方式以及需要关注的核心指标,便于日常生产进行监控和巡检。


1. 监控指标采集

etcd默认通过/metrics指标暴露相关指标,因此不需要部署额外的exporter,天生可以跟promethues兼容,可以直接进行指标采集。

1.1 监控指标采集

bash 复制代码
curl -k https://127.0.01:2379/metrics --cacert "/etc/kubernetes/pki/etcd/ca.crt" --cert "/etc/kubernetes/pki/etcd/server.crt" --key "/etc/kubernetes/pki/etcd/server.key"

1.2 配置promethues采集和大盘

完成指标采集后,可以通过prometheus配置监控、告警和大盘。

配置prometheus的指标采集任务

bash 复制代码
  - job_name: etcd
    static_configs:
      - targets: ['172.19.0.2:2379','172.19.0.3:2379','172.19.0.4:2379']

完成prometheus监控指标后,就可以配置grafana大盘,grafana的dashboard官网可以下载很多优秀的大盘进行借鉴,本文不再追溯。

2. 核心告警指标

名称 指标说明 告警阈值 备注
​up{}==0 etcd节点是否启动 ==0 每个节点应该正常启动
etcd_server_has_leader 集群是否有Leader !=1 集群没有Leader不能提供服务
rate(etcd_server_leader_changes_seen_total)[1h] 集群Leader频繁切换 >=4 如果leader一直发生切换,是非常不稳定的,一个小时内发生超过三次的leader切换,需要发出告警
rate(etcd_server_proposals_failed_total)[1h] etcd日志提交频繁失败 >=10 如果集群一直出现提交失败,说明集群不稳定,一个小时内10次提交失败,需要发出告警
histogram_quantile(0.99, rate(etcd_disk_backend_commit_duration_seconds_bucket{}[5m])) etcd数据提交99分位写入耗时 >=0.5ms 由于有可能有长尾效应,应该使用分位情况表示,并且该配置跟磁盘io性能有很大关系,需要根据实际情况调整
​sum by(method) (rate(etcd_http_failed_total{}[5m])) / sum by(method) (rate(etcd_http_received_total{}[5m])) http访问5分钟内失败百分比 >=0.01 http请求的失败率不应该超过1%,具体的合适的阈值也需要根据实际情况调整
​sum by(method) (rate(etcd_grpc_requests_failed_total{}[5m])) / sum by(method) (rate(etcd_grpc_total{}[5m])) rpc访问5分钟内失败百分比 >=0.01 rpc请求的失败率不应该超过1%,具体的合适的阈值也需要根据实际情况调整
磁盘使用率 <= 70
磁盘await 磁盘读写的await <= 1ms
其他机器基础指标 其他机器基础指标 待定

3. 参考文章

相关推荐
爱吃烤鸡翅的酸菜鱼19 分钟前
从数据库直连到缓存预热:城市列表查询的性能优化全流程
java·数据库·后端·spring·个人开发
dualven_in_csdn37 分钟前
ubuntu离线安装 xl2tpd
linux·数据库·ubuntu
初听于你3 小时前
高频面试题解析:算法到数据库全攻略
数据库·算法
BTU_YC8 小时前
Neo4j查询计划完全指南:读懂数据库的“执行蓝图“
数据库·neo4j
非极限码农9 小时前
Neo4j图数据库上手指南
大数据·数据库·数据分析·neo4j
mit6.8249 小时前
[C# starter-kit] 命令/查询职责分离CQRS | MediatR |
java·数据库·c#
苏打水com10 小时前
数据库进阶实战:从性能优化到分布式架构的核心突破
数据库·后端
shan~~10 小时前
linux达梦数据库操作
linux·数据库·chrome
武文斌7711 小时前
项目学习总结:LVGL图形参数动态变化、开发板的GDB调试、sqlite3移植、MQTT协议、心跳包
linux·开发语言·网络·arm开发·数据库·嵌入式硬件·学习