Kubernetes 组件 SLI 指标
功能状态:
Kubernetes v1.29 [稳定]
默认情况下,Kubernetes 1.32 为每个 Kubernetes 组件二进制文件发布服务级别指标(SLI)。此指标端点在每个组件的服务的 HTTPS 端口上公开,路径为 /metrics/slis
。从 v1.27 开始,每个 Kubernetes 组件的 ComponentSLIs
特性门控 默认启用。
SLI 指标
启用 SLI 指标后,每个 Kubernetes 组件都会公开两个指标,并按运行状况检查进行标记
- 一个量规(表示运行状况检查的当前状态)
- 一个计数器(记录每个运行状况检查状态的累积计数)
您可以使用指标信息来计算每个组件的可用性统计信息。例如,API 服务器检查 etcd 的运行状况。您可以计算并报告 etcd 的可用或不可用时间 - 由其客户端 API 服务器报告。
prometheus 量规数据如下所示
# HELP kubernetes_healthcheck [ALPHA] This metric records the result of a single healthcheck.
# TYPE kubernetes_healthcheck gauge
kubernetes_healthcheck{name="autoregister-completion",type="healthz"} 1
kubernetes_healthcheck{name="autoregister-completion",type="readyz"} 1
kubernetes_healthcheck{name="etcd",type="healthz"} 1
kubernetes_healthcheck{name="etcd",type="readyz"} 1
kubernetes_healthcheck{name="etcd-readiness",type="readyz"} 1
kubernetes_healthcheck{name="informer-sync",type="readyz"} 1
kubernetes_healthcheck{name="log",type="healthz"} 1
kubernetes_healthcheck{name="log",type="readyz"} 1
kubernetes_healthcheck{name="ping",type="healthz"} 1
kubernetes_healthcheck{name="ping",type="readyz"} 1
而计数器数据如下所示
# HELP kubernetes_healthchecks_total [ALPHA] This metric records the results of all healthcheck.
# TYPE kubernetes_healthchecks_total counter
kubernetes_healthchecks_total{name="autoregister-completion",status="error",type="readyz"} 1
kubernetes_healthchecks_total{name="autoregister-completion",status="success",type="healthz"} 15
kubernetes_healthchecks_total{name="autoregister-completion",status="success",type="readyz"} 14
kubernetes_healthchecks_total{name="etcd",status="success",type="healthz"} 15
kubernetes_healthchecks_total{name="etcd",status="success",type="readyz"} 15
kubernetes_healthchecks_total{name="etcd-readiness",status="success",type="readyz"} 15
kubernetes_healthchecks_total{name="informer-sync",status="error",type="readyz"} 1
kubernetes_healthchecks_total{name="informer-sync",status="success",type="readyz"} 14
kubernetes_healthchecks_total{name="log",status="success",type="healthz"} 15
kubernetes_healthchecks_total{name="log",status="success",type="readyz"} 15
kubernetes_healthchecks_total{name="ping",status="success",type="healthz"} 15
kubernetes_healthchecks_total{name="ping",status="success",type="readyz"} 15
使用此数据
组件 SLI 指标端点旨在高频率地抓取。高频率抓取意味着您最终会获得更精细的量规信号,然后可以使用该信号来计算 SLO。/metrics/slis
端点提供计算相应 Kubernetes 组件的可用性 SLO 所需的原始数据。
上次修改时间:2023 年 10 月 18 日,太平洋标准时间上午 10:00:更新 component-slis 文档 (53a8725ba7)