运行 pods 和节点的 Kubernetes prometheus 指标?

Kubernetes prometheus metrics for running pods and nodes?

我已经设置了 prometheus 以通过遵循 prometheus documentation.

来监控 kubernetes 指标

prometheus 中现在显示了许多有用的指标。​​

但是,我看不到任何引用我的 pods 或节点状态的指标。

理想情况下 - 我希望能够绘制 pod 状态(运行、Pending、CrashLoopBackOff、Error)和节点(NodeReady、Ready)的图表。

有这个指标吗?如果没有,我可以将它添加到某个地方吗?又如何?

我认为不存在此类指标。

您必须修改源代码才能添加它们。查看此文件,了解如何注册指标:https://github.com/kubernetes/kubernetes/blob/master/pkg/kubelet/metrics/metrics.go, 并查看有关如何记录指标的这一行:https://github.com/kubernetes/kubernetes/blob/master/pkg/kubelet/pleg/generic.go#L180

常规的 kubernetes 设置不会公开这些指标 - 进一步讨论 here

但是,可以使用另一个服务来收集这些集群级别的指标:https://github.com/kubernetes/kube-state-metrics

目前提供的 node_status_ready 和 pod_container_restarts 听起来像我想要的。

我发现我可以使用 heapster 和 snap 监控这些指标,这对我的案例来说是一个可行的解决方法。让我知道你是否也在使用它,我会给你正确的指标来获取这些数据。