TL;DR 我可以注册多个 API 以在 k8s 中提供自定义指标吗?
我们有一个 Multi-Tenancy 集群——在不同的命名空间中有不同的部署,它们都有自己的监控解决方案(使用 Prometheus)
我们希望每个命名空间都能够使用 HPA 在他们自己的命名空间中扩展来自 Prometheus 实例的自定义指标。
我们在我们的开发环境中使用 Prometheus 适配器 (https://github.com/DirectXMan12/k8s-prometheus-adapter) 配置了自定义指标,并且适用于以下部署:
apiservice.apiregistration.k8s.io
名为 v1beta1.custom.metrics.k8s.io
并指向命名空间 APIService
不会被放入命名空间并且是全局的 - 并且命名必须是 v1beta1.custom.metrics.k8s.io
这意味着我们只能将单个 prometheus 用于自定义指标——这会破坏我们的用例。知道如何将多个服务注册为 custom_metrics 的 API 吗?或其他方式来做到这一点?
最佳答案
所以我不确定这是最好的答案——在我这么说之前等待社区做出回应——但这绝对是一个答案。
您似乎无法为单个 API 注册多个服务 - 因此答案是将数据聚合到单个 API 中。
选项包括:
/federated
每个 Prometheus 的端点,并使用它来为自定义扩展指标提供服务。 ( https://prometheus.io/docs/prometheus/latest/federation/ ) 关于kubernetes - 在 Kubernetes 中注册多个自定义指标 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52856409/