dm监控端口6783重复报错

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

  • 【TiDB 版本】:V3.0.3
  • 【问题描述】:dm版本为V1.0.3

背景:在一台机器上部署多个dm集群的监控组件(Prometheus、grafana、alertmanager),三个组件的端口在配置文件中指定为非默认的不同的端口,并未使用和指定6783端口

问题现象:部署第二套dm的监控组件时,报错“ tcp4 0.0.0.0:6783: bind: address already in use ”

请问6783端口是dm的alertmanager组件在什么地方使用和配置的呢?

该端口有类似alertmanager_port、prometheus_port这种自定义变量吗 ? 谢谢

goroutine 1 [running]: github.com/prometheus/alertmanager/vendor/github.com/weaveworks/mesh.(*Router.listenTCP(0xc4201320e0) /go/src/github.com/prometheus/alertmanager/vendor/github.com/weaveworks/mesh/router.go:108 +0x17f github.com/prometheus/alertmanager/vendor/github.com/weaveworks/mesh.(*Router.Start(0xc4201320e0) /go/src/github.com/prometheus/alertmanager/vendor/github.com/weaveworks/mesh/router.go:87 +0x2b main.main() /go/src/github.com/prometheus/alertmanager/cmd/alertmanager/main.go:217 +0x36f0 level=info ts=2020-04-01T07:19:31.614289321Z caller=main.go:136 msg=“Starting Alertmanager” version="(version=0.14.0, branch=HEAD, revision=30af4d051b37ce817ea7e35b56c57a0e2ec9dbb0)" level=info ts=2020-04-01T07:19:31.614369186Z caller=main.go:137 build_context="(go=go1.9.2, user=root@37b6a49ebba9, date=20180213-08:16:42)" panic: listen tcp4 0.0.0.0:6783: bind: address already in use

  1. 是支持,alertmanager_port 的配置的。可以在 dm-ansible/group_vars/alertmanager_servers.yml 里面配置具体的端口
  2. 6783 端口可以到报错的机器上面确认一下具体是被哪个进程以及应用占用了。

可能上面描述的不太清楚。inventory.ini配置文件里配置如下,并没有配置和使用6783端口。

[prometheus_servers]

prometheus ansible_host=192.168.13.101 prometheus_port=9490

[grafana_servers]

grafana ansible_host=192.168.13.101 grafana_port=3400

[alertmanager_servers]

alertmanager ansible_host=192.168.13.101 alertmanager_port=9493

1: 在 dm-ansible/group_vars/alertmanager_servers.yml 里只看到alertmanager_port端口配置,也没有使用6783端口

2:如下图,6783端口被dm的alertmanager使用了

现象:dm配置文件里未指定和申请使用6783端口,但实际却使用了6783端口(第一套dm集群的alertmanager占用了该端口,第二套dm集群在申请6783端口时出现了端口已被使用的错误)

问题: dm的alertmanager组件除了使用alertmanager_port变量指定的端口外,还默认使用了一个6783端口。请问该端口可以通过什么变量参数来进行自定义配置呢?谢谢

1)6783 这个端口不是 alertmanager 的默认端口,具体可以查看 dm-ansible/group_vars/alertmanager_servers.yml 文件里面的配置,同时也可以在这里自定义端口信息

2)已经出现的端口占用问题,可能是之前自定义端口部署之后清理的残留。确认 6783 对应的服务不再使用,可以 kill 掉占用的服务,重新部署监控组件。