我在 Kubernetes 中使用 metrics-server。如何提取与这些核心指标相关的数据:
- 一段时间内每个水平 Pod 运行的 Pod 数量
- 特定时间点的 CPU 使用率
- 一段时间内的故障/重启次数
答案1
Metrics-server 有一个内置 API 端点反映当前资源使用情况,并可以通过客户端库或代理主端点,例如通过kubectl proxy
在本地主机中公开指标或k get --raw "/apis/metrics.k8s.io/v1beta1/pods" |jq .
获取 JSON 结果(使用jq
先前安装的)。
请记住此 API 尚不支持指标聚合。通常,这些是由第三方代理收集并在单独的后端汇总, 例如,Stackdriver 监控或者数据狗。
现在,对于您想要从集群中获取的特定信息,没有针对 HPA 创建的副本数量的特定指标。系统使用资源使用情况指标来确定何时生成更多部署副本。
对于已聚合的指标,CPU 使用情况情况似乎非常具体,因此您可以使用 Kubernetes 的聚合解决方案,就像前面提到的那样。
最后,也没有针对失败的具体指标,而且这些具体信息似乎不属于任何指标管道而是记录,因为故障通常会被记录下来,但可以之后汇总创建指标。