我想监视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
接下来我该怎么办?
答案 0 :(得分:1)
获取docker ip地址
ip addr show docker0
在prometherus.yml配置中输入docker ip addres
static_configs:
- targets: ['172.17.0.1:9323']
答案 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
如果连接被拒绝,它将提示您,例如通过防火墙。