etcd监控指标-metrics

Metrics

metrics用于实时监控和调试。

etcd不会保留metrics,当成员发生重启,metrics将被重置。所以etcd可结合prometheus,对etcd进行监控。

查看metrics的最简单方法就是curl ip:port/metrics

指标名称有一个 etcd 或者 etcd_debugging前缀作为其命名空间前缀,和一个子系统前缀(例如 wal、etcdserver)

etcd namespace metrics

etcd前缀下的指标用于监控和警报。它们是稳定的高级指标。如果这些指标有任何更改,将包含在发行说明中。

Server

这些指标描述了 etcd 服务器的状态。为了检测故障或故障排除问题,应密切监控每个生产 etcd 集群的服务器指标。

所有这些指标都以 etcd_server_作为前缀

名称

描述

类型

has_leader

领导者是否存在。1是存在,0不是。

Gauge

leader_changes_seen_total

看到的领导者变更次数。

Counter

proposal_committed_total

提交的共识提案总数。

Gauge

proposal_applied_total

已应用的共识提案总数。

Gauge

proposal_pending

当前待处理提案的数量。

Gauge

proposal_failed_total

看到的失败提案总数。

Counter

has_leader指示成员是否有领导者。如果成员没有领导者,则完全不可用。如果集群中的所有成员都没有任何领导者,则整个集群完全不可用。

leader_changes_seen_total计算成员自开始以来看到的领导者更改次数。领导层的快速变化会显着影响 etcd 的性能。它还表明领导者不稳定,可能是由于网络连接问题或 etcd 集群负载过大。

proposals_committed_total记录提交的共识提案总数。如果集群运行状况良好,该指标应该会随着时间的推移而增加。etcd 集群的几个健康成员可能同时拥有不同的总提交提案。这种差异可能是由于在启动后从对等体恢复、落后于领导者,或者是领导者因此拥有最多的提交。监控集群中所有成员的这个指标很重要;单个成员与其领导者之间持续较大的滞后表明该成员行动缓慢或不健康。

proposals_applied_total记录应用的共识提案总数。etcd 服务器异步应用每个提交的提案。proposals_committed_total和之间的差异proposals_applied_total通常应该很小(即使在高负载下也应该在几千以内)。如果它们之间的差异继续上升,则表明etcd服务器过载。在应用昂贵的查询(例如大范围查询或大型 txn 操作)时可能会发生这种情况。

proposals_pending表示有多少提案排队等待提交。上升的未决提案表明客户端负载很高或成员无法提交提案。

proposals_failed_total 通常与两个问题有关:与领导者选举相关的临时故障或由于集群中的仲裁丢失而导致的更长停机时间。

Disk

这些指标描述磁盘操作的状态。

所有这些指标都以etcd_disk_为前缀

名称

描述

类型

wal_fsync_duration_seconds

wal 调用的 fsync 的延迟分布

Histogram

backend_commit_duration_seconds

后端调用的提交的延迟分布。

Histogram

一个wal_fsync被称为当ETCD应用之前仍然存在,它的日志条目到磁盘。

一个backend_commit当ETCD提交的其最近的更改到磁盘的增量快照被调用。

高磁盘操作延迟 (wal_fsync_duration_seconds或backend_commit_duration_seconds) 通常表示磁盘问题。它可能会导致高请求延迟或使集群不稳定。

Network

这些指标描述了网络的状态。

所有这些指标都以 etcd_network_为前缀

名称

描述

类型

peer_sent_bytes_total

发送到具有 ID 的对等方的总字节数To。

Counter(To)

peer_received_bytes_total

从具有 ID 的对等方接收的总字节数From。

Counter(From)

peer_sent_failures_total

来自具有 ID 的对等方的发送失败总数To。

Counter(To)

peer_received_failures_total

从具有 ID 的对等方接收失败的总数From。

Counter(From)

peer_round_trip_time_seconds

同行之间的往返时间直方图。

Histogram(To)

client_grpc_sent_bytes_total

发送到 grpc 客户端的总字节数。

Counter

client_grpc_received_bytes_total

接收到 grpc 客户端的总字节数。

Counter

peer_sent_bytes_total计算发送到特定对等方的总字节数。通常领导成员发送的数据比其他成员多,因为它负责传输复制的数据。

peer_received_bytes_total计算从特定对等方接收的总字节数。通常追随者成员只从领导者那里接收数据。

etcd_debugging namespace metrics

etcd_debugging前缀下的指标用于调试。它们非常依赖于实现且易变。在新的 etcd 版本中,它们可能会在没有任何警告的情况下被更改或删除。当某些指标变得更加稳定时,它们可能会移至etcd前缀。

snapshot

名称

描述

类型

snapshot_save_total_duration_seconds

快照调用的保存总延迟分布

Histogram

异常高的快照持续时间 ( snapshot_save_total_duration_seconds) 表示磁盘问题,并可能导致集群不稳定。

Prometheus supplied metrics

Prometheus 客户端库在go和process命名空间下提供了许多指标。有几个特别有趣。

名称

描述

类型

process_open_fds

打开的文件描述符数。

Counter

process_max_fds

打开的文件描述符的最大数量。

Counter

大量的文件描述符 ( process_open_fds) 使用(即接近进程的文件描述符限制process_max_fds)表示潜在的文件描述符耗尽问题。如果文件描述符耗尽,etcd 可能会因为无法创建新的 WAL 文件而发生恐慌。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值