Prometeus 无法在“0.0.0.0”端口 9094 上启动 TCP 侦听器:

Posted

技术标签:

【中文标题】Prometeus 无法在“0.0.0.0”端口 9094 上启动 TCP 侦听器:【英文标题】:Prometeus Failed to start TCP listener on \"0.0.0.0\" port 9094: 【发布时间】:2021-12-22 18:21:34 【问题描述】:

当我尝试使用 alertmanager --config.file /etc/alertmanager/alertmanager.yml 运行 Prometheus 警报管理器时

它给了我类似的错误

   $ alertmanager --config.file /etc/alertmanager/alertmanager.yml
level=info ts=2021-11-10T05:08:13.937Z caller=main.go:216 msg="Starting Alertmanager" version="(version=0.21.0, branch=HEAD, revision=4c6c03ebfe21009c546e4d1e9b92c371d67c021d)"
level=info ts=2021-11-10T05:08:13.937Z caller=main.go:217 build_context="(go=go1.14.4, user=root@dee35927357f, date=20200617-08:54:02)"
level=info ts=2021-11-10T05:08:13.939Z caller=cluster.go:161 component=cluster msg="setting advertise address explicitly" addr=<PrivateIP> port=9094
level=error ts=2021-11-10T05:08:13.940Z caller=main.go:241 msg="unable to initialize gossip mesh" err="create memberlist: Could not set up network transport: failed to obtain an address: Failed to start TCP listener on \"0.0.0.0\" port 9094: listen tcp 0.0.0.0:9094: bind: address already in use"

我通过netstat -tnlp检查了监听端口

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
                
tcp6       0      0 :::9094                 :::*                    LISTEN      - 

我也试过用 sudo kill -9 $(sudo lsof -t -i:9094)fuser -n tcp -k 9094 杀死进程

我不知道如何解决这个问题。

【问题讨论】:

【参考方案1】:

不清楚为什么端口不可用。

但是,如果您不需要高可用性,您可以禁用它,并且 alertmanager 不会尝试使用该端口:

alertmanager \
--cluster.listen-address= \
--config.file=/etc/alertmanager/alertmanager.yml

见:https://github.com/prometheus/alertmanager#high-availability

【讨论】:

以上是关于Prometeus 无法在“0.0.0.0”端口 9094 上启动 TCP 侦听器:的主要内容,如果未能解决你的问题,请参考以下文章

如何使反应应用程序在端口 8080 和 0.0.0.0 上运行?

无法建立连接,因为目标计算机主动拒绝它127.0.0.1:63591

无法访问9200端口的ElasticSearch服务

adb.exe无法启动

无法从远程访问 docker 端口

5672端口引发的一个大坑