我希望使用具有多个kube状态度量的kubernetes (集群-0)来监视多个其他kubernetes集群(集群-1,2,3,4)。
在(集群-0)中,我分成多个名称空间,如下所示:
namespace: monitor
(here I will run prometheus to scrape metrics from other kube-state-metrics pod)namespaces: cluster-0
(here I will run kube-state-metrics pod to monitor cluster-0
....
namespaces: cluster-4
(here I will run kube-state-metrics pod to monitor cluster-4)
...等等..。
这里的问题是我将如何设置prometheus来自动刮新的kube状态度量,因为我将非常快地扩展kubernetes集群,或者缩小它。以及如何区分它们之间的不同指标,比如有一个头.
我已经尝试使用配置,但是仅仅定位单个- targets: ['serviceIP:8080']在我的情况下并不是很好。
发布于 2020-10-27 10:17:35
正如我在评论中提到的。您需要的是库伯奈特斯上的Prometheus自我发现:
Kubernetes自我发现配置允许在新目标出现时自动检索刮伤的目标。刮取是基于Kubernetes服务名称的,所以即使IP地址改变(而且它们会改变),Prometheus也可以无缝地抓取目标。Prometheus自我发现是基于Kubernetes标签和注释,解释了这里。这允许在选择要刮掉的应用程序时有很大的粒度。在这里理解角色字段也很重要,因为它定义了刮取作业的行为。角色定义希望Prometheus查找的Kubernetes资源的类型。目前,它可以是端点、服务、豆荚、节点或入口。例如,如果将角色设置为pod,Prometheus将为每个吊舱发现一个目标,并将其容器公开为目标。
有了它,当新节点出现时,您将能够从它们中删除度量。在链接的文档中可以找到更多的细节和示例。
https://serverfault.com/questions/1038933
复制相似问题