kube-state-metrics 详解

原文:https://mp.weixin.qq.com/s/176eyFBknzdA5wpiJrxDSg

概述

已经有了 cadvisor、heapster、metric-server,几乎容器运行的所有指标都能拿到,但是下面这种情况却无能为力:

  • 我调度了多少个 replicas?现在可用的有几个?

  • 多少个 Pod 是 running/stopped/terminated 状态?

  • Pod 重启了多少次?

  • 我有多少 job 在运行中

而这些则是 kube-state-metrics 提供的内容,它基于 client-go 开发,轮询 Kubernetes API,并将 Kubernetes的结构化信息转换为metrics。

功能

kube-state-metrics 提供的指标,按照阶段分为三种类别:

  • 1.实验性质的:k8s api 中 alpha 阶段的或者 spec 的字段。

  • 2.稳定版本的:k8s 中不向后兼容的主要版本的更新

  • 3.被废弃的:已经不在维护的。

     

 

指标类别包括:

- CronJob Metrics

- DaemonSet Metrics

- Deployment Metrics

- Job Metrics

- LimitRange Metrics

- Node Metrics

- PersistentVolume Metrics

- PersistentVolumeClaim Metrics

- Pod Metrics

- Pod Disruption Budget Metrics

- ReplicaSet Metrics

- ReplicationController Metrics

- ResourceQuota Metrics

- Service Metrics

- StatefulSet Metrics

- Namespace Metrics

- Horizontal Pod Autoscaler Metrics

- Endpoint Metrics

- Secret Metrics

- ConfigMap Metrics

 

以 Pod 为例:

- kube_pod_info

- kube_pod_owner

- kube_pod_status_phase

- kube_pod_status_ready

- kube_pod_status_scheduled

- kube_pod_container_status_waiting

- kube_pod_container_status_terminated_reason

- ...

使用

部署清单地址:https://github.com/kubernetes/kube-state-metrics/tree/master/kubernetes

kube-state-metrics 详解_第1张图片

 

主要镜像有: image: quay.io/coreos/kube-state-metrics:v1.5.0 image: k8s.gcr.io/addon-resizer:1.8.3(参考metric-server文章,用

你可能感兴趣的:(golang,后端)