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. 参考文章

相关推荐
考虑考虑2 小时前
数据库中的EXISTS
运维·数据库·后端
Wang's Blog3 小时前
Java框架快速入门: Spring Security+OAuth2之数据库和实体类的RBAC改造
java·数据库·spring
梦想平凡4 小时前
百游棋牌源代码开发搭建教程(十):隔离部署、备份恢复与双端验收
java·前端·javascript·数据库·源代码管理
xcLeigh4 小时前
让大模型长出手脚,自己写SQL查数据库(Function Calling初探)
数据库·人工智能·sql·时序数据库·timechoai
yume_sibai5 小时前
06-Rust Web 开发实战(Axum 框架 + 数据库 + JWT 认证 + 中间件 + 部署)
前端·数据库·rust
AugustRed6 小时前
Neo4j 图数据库原理 + 应用场景简单介绍
数据库·neo4j
Gl�ria6 小时前
Redis 高可用架构对比
数据库·redis
IpdataCloud7 小时前
高可用的IP数据接口平台有哪些?从可用性、P99延迟到离线部署的评估框架(含代码)
数据库·tcp/ip·ip
呆萌很7 小时前
MySQL 数据库和表的管理操作(命令行)
数据库·mysql
IvorySQL8 小时前
当PostgreSQL“听懂”MySQL——协议兼容层的设计与实战
数据库·人工智能·postgresql