普罗米修斯与kubernetes上的多容器荚

我有一个在我的kubernetes部署多容器吊舱:

  • java的
  • Redis的
  • nginx的

对于每个容器,都有一个Prometheus出口商的容器。

问题是如果注释部分每个容器只支持一个端口,我如何才能将这些端口暴露给Prometheus?

annotations: prometheus.io/scrape: 'true' prometheus.io/port: 'xxxx' 

但我需要这样的东西:

 annotations: prometheus.io/scrape: 'true' prometheus.io/port_1: 'xxxx' prometheus.io/port_2: 'yyyy' prometheus.io/port_3: 'zzzz' 

也许有其他的方法来从我的多容器豆荚刮去所有的指标? 在此先感谢您提供任何帮助。

这是普罗米修斯的一个例子 。 把它放在你自己的configuration中。

接下来,添加:

 annotations: prometheus.io/scrape: 'true' 

到您的pod元数据。

并且在每个提供prom的指标的容器上创build一个适当的端口,命名为metrics

而已。 普罗米修斯将只刮这些端口,而不会有任何情况,比如当你的redis实例在其6379端口上获得http请求时。

您提出的注释应该可以工作。 为每个端口注释创build一个scrape_config,只保留匹配相应注释端口名称的目标。