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 PST:更新 component-slis 的文件 (53a8725ba7)