kubernetes - 将 pod 指标拉取到外部 prometheus
问题描述
我正在尝试使用现有的 Prometheus(集群外部)从 EKS 集群内部聚合所有指标、EC2(CPU、内存、磁盘)和 Pod(CPU、内存、磁盘)。我开始使用 node-exporter、kube-state-metrics 添加数据,但我一直在部署 metrics-server。使用 helm 我配置并安装了它,kube top
并且kubectl get --raw "/apis/metrics.k8s.io/v1beta1/pods" | jq
正在提取数据,但是有人可以建议我如何将所有这些都拉到我的外部 Prometheus 上吗?有没有办法将此暴露给 /metrics URL?谢谢!
解决方案
我认为你最好的选择是使用普罗米修斯联盟。在那个设置中,
您将拥有一个集群内 prometheus 和您原来的外部 prometheus。集群内的 prometheus 进行实际的收集和临时存储。
在您的外部 prometheus 中,您将抓取
/federate
集群内 prometheus 的端点。/federate
专为您正在尝试的用例而设计
这是获得高性能和可靠的指标抓取的最佳方法。通过 apiserver 获取指标不是一个好方法。即使有可能,也会给 apiserver 带来不必要的压力。
推荐阅读
- gitlab - 在 Gitlab Prometheus 集成中添加自定义指标
- javascript - 在将 react-router 5 与 redux 7 一起使用时,react-router在转到新路由后不会重置状态
- visual-studio - Clang tidy 不使用 Visual Studio
- amazon-rds - 无法将 RDS 连接到 Google 数据洞察
- asp.net-core-mvc - 我可以注册用户,但无法使用相同的凭据再次登录
- angular - 将值传递给 ngb 模态角度
- html - 为什么 Jquery 不给出
单击锚点时折叠的类? - node.js - 使用 express 从网站获取 html 返回无效的标头值 char
- django - 在 django 中重启 celery 和 celery beat schedule 关系
- javascript - HeaderRight 按钮不可点击(React Native)