我已经安装了 kubernetes 指标服务器 https://github.com/kubernetes-sigs/metrics-server它工作正常,我可以使用“kubectl top pods”和“kubectl top Nodes”,现在我想将指标抓取到kubernetes集群外部的prometheus以显示在Grafana上,我尝试过的是
- 使用 NodePort 公开指标服务器服务但无法正常工作,出现一些 https 问题
- 从https://github.com/ghouscht/metrics-server-exporter/安装metrics-server-exporter (这个只抓取了一些指标,我在grafana上看不到它)和https://github.com/grupozap/metrics-server-exporter/ (这不是一个 http 应用程序,因此我无法将其公开为 NodePort 服务)
我应该做什么?
最佳答案
尝试这些并让我知道。
1.首先,您应该运行 kube-state-metrics 来收集所有 kubernetes 指标。
2.在 kube-state-metrics 上使用 pod 注释,公开类似的指标
prometheus.io/scrape: 'true'
prometheus.io/port: 'port'
prometheus.io/path: '/metrics'
prometheus.io/scheme: 'http'
这应该会公开 pod 级别的指标。要检查这一点,您可以执行到 pod 并在端口上执行一个curl 请求,后跟路径
3.现在运行一个普罗米修斯代理,它可以从此端口抓取指标并将其发送到后端数据库服务器
4.在你的grafana代理中配置prometheus ds,应该就完成了
关于kubernetes - 如何将metrics-server抓取到kubernetes集群外的prometheus,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65621273/