无法使用普罗米修斯收集码头工人指标

时间:2018-11-08 06:00:22

标签: docker monitoring prometheus

我想监视docker引擎。我正在关注此页面Collect Docker metrics with Prometheus,以配置普罗米修斯。

在我的PC上(操作系统版本为CentOS 7.4,码头工人版本为17.12.0.ce),我将以下内容粘贴到/etc/docker/daemon.json

{
  "metrics-addr" : "0.0.0.0:9323",
  "experimental" : true
}

然后,启动prometheus实例,但是我发现prometheus和docker之间的连接失败。

错误日志:

Get http://localhost:9323/metrics: dial tcp 127.0.0.1:9323: connect: connection refused

接下来我该怎么办?

2 个答案:

答案 0 :(得分:1)

获取docker ip地址

ip addr show docker0    

在prometherus.yml配置中输入docker ip addres

    static_configs:
  - targets: ['172.17.0.1:9323']

enter image description here

答案 1 :(得分:0)

关于您的问题

  

接下来我该怎么办?

/etc/docker/daemon.json中更改配置后,有必要

systemctl daemon-reload
systemctl restart docker 

此后,您可以检查端口9323是否处于状态LISTEN

lsof -Pi TCP -a -c dockerd 

正如您在评论中提到的

curl http://$(hostname):9323/metrics  

在您的本地主机上正常工作,表明您的网络存在问题。

由于Prometheus服务通常在其他地方运行,因此您可以检查远程计算机与Docker主机之间是否存在连接。为此,您可以使用

root@prometheusHost:/# nc -vz dockerHost 9323

如果连接被拒绝,它将提示您,例如通过防火墙。