• 欢迎光临~

etcd 监控项梳理

开发技术 开发技术 2022-12-29 次浏览
指标类型说明
etcd_server_has_leader Gauge etcd member是否有Leader。
  • 1:表示有主节点。
  • 0:表示没有主节点。
etcd_server_is_leader Gauge etcd member是否是Leader。
  • 1:表示是。
  • 0:表示不是。
etcd_server_leader_changes_seen_total Counter etcd member过去一段时间切主次数。
etcd_mvcc_db_total_size_in_bytes Gauge etcd member db总大小。
etcd_mvcc_db_total_size_in_use_in_bytes Gauge etcd member db实际使用大小。
etcd_disk_backend_commit_duration_seconds_bucket Histogram etcd backend commit延时。

Bucket列表为:[0.001 0.002 0.004 0.008 0.016 0.032 0.064 0.128 0.256 0.512 1.024 2.048 4.096 8.192]

etcd_debugging_mvcc_keys_total Gauge etcd keys总数。
etcd_server_proposals_committed_total Gauge raft proposals commit提交总数。
etcd_server_proposals_applied_total Gauge raft proposals apply总数。
etcd_server_proposals_pending Gauge raft proposals排队数量。
etcd_server_proposals_failed_total Counter raft proposals失败数量。

功能解析:

指标类型说明
etcd_server_has_leader Gauge etcd member是否有Leader。
  • 1:表示有主节点。
  • 0:表示没有主节点。
etcd_server_is_leader Gauge etcd member是否是Leader。
  • 1:表示是。
  • 0:表示不是。
etcd_server_leader_changes_seen_total Counter etcd member过去一段时间切主次数。
etcd_mvcc_db_total_size_in_bytes Gauge etcd member db总大小。
etcd_mvcc_db_total_size_in_use_in_bytes Gauge etcd member db实际使用大小。
etcd_disk_backend_commit_duration_seconds_bucket Histogram etcd backend commit延时。

Bucket列表为:[0.001 0.002 0.004 0.008 0.016 0.032 0.064 0.128 0.256 0.512 1.024 2.048 4.096 8.192]

etcd_debugging_mvcc_keys_total Gauge etcd keys总数。
etcd_server_proposals_committed_total Gauge raft proposals commit提交总数。
etcd_server_proposals_applied_total Gauge raft proposals apply总数。
etcd_server_proposals_pending Gauge raft proposals排队数量。
etcd_server_proposals_failed_total Counter raft proposals失败数量。

常见异常指标

正常情况异常情况异常说明
3个etcd member都有Leader,且其中之一必须为Leader。即sum(etcd_server_has_leader)=3,且有一个member etcd_server_is_leader == 1 单个Member异常 对应的member etcd_server_has_leader!=1,不影响整体etcd集群对外提供服务。
大于1个Member异常 多个member etcd_server_has_leader!=1,Member异常大于1,此时etcd集群无法对外提供服务。

同时观察是否存在Member的etcd_server_is_leader == 1,如没有,则etcd处于无主状态,无法对外提供服务。

backend commit时延

 
正常情况异常情况异常说明
该指标应该处于几十ms级别。 长时间出现几百ms甚至秒级别的延迟。 说明此时磁盘读写有异常。

raft proposal情况

 
正常情况异常情况异常说明
raft proposal failed速率为0。 raft proposal failed大于0。 表明Raft协议提交有失败,如遇到此值很大,则需进一步排查。
raft proposal pending总数为0。 raft proposal pending总数大于0。 表明Raft协议提交有积压,一般是Apply慢,可结合backend commit时延进行分析。
commit-apply差值为0。 commit - apply差值大于0。 表明此时etcd压力大,客户端请求过多。

若此值大于5000,etcd则会拒绝接后续的请求,并返回too many request。直到将积压的Proposals处理完毕。

程序员灯塔
转载请注明原文链接:etcd 监控项梳理
喜欢 (0)