dm 修改 target database为负载均衡 报错

之前没有部署负载均衡,设置的target database为任意一台tidb server
现在在tidb集群之外找了另一台服务器配置了负载均衡,并且将该负载均衡节点的ip及端口白名单配置给了dm集群所有节点,且测试过在dm集群中能通过负载均衡连接tidb数据库,然后修改之前的dm同步任务参数中,target database信息改为新的负载均衡节点,stop-task & start-task后报如下错误:
code=26002:class=dm-master:scope=downstream:level=high], Message: fail to initial checker: failed to open DSN root:***@10.68.207.5:4000, RawCause: dial tcp 10.68.207.5:4000: i/o timeout, Workaround: Please check the database config in configuration file.
请问是什么原因?

1 个赞

1)确定下 lvs vip 10.68.207.5是否正确路由到各个tidb-server上;
2)在dm主机上 手动连下vip 看看是否可以正常连接?

1 个赞

用lvs需要注意DM连接时候注意绑定LO地址,同时服务不要再LVS机器上跑,这个会环路,直接用haproxy做代理没有这个问题

我现在dm集群跟tidb的集群是在一个环境下,然后负载均衡是用的阿里的slb搭建的,用另外一台服务器搭的,会不会是出现了从dm到负载均衡又到tidb,出现了你说的回路问题??

1,2都确认过,都没问题,而且我在本地,用haproxy搭建的负载均衡,即使负载均衡里面有输入错误的情况,启动任务也能成功的

这个明显是网络不通,围绕着这个排查下。

看你这个搞法 应该是这个问题的,你可以在和SLB没任何关系的部署服务 在访问,之前遇到过

如果存在task配置读取很慢也会触发这个问题的,不能说明网络问题的,遇到很多次

谢谢,要等申请下一波独立的dm服务器来测了,我觉得这个原因的概率大

我在所有的dm服务器上,通过mysql client连接这个slb服务器都成功,然后还用go去连接数据库,也都能成功,只是有时会很慢,连通要将近1m

可以排查一下为什么需要 1m. DM 这边等 30s 就会超时中断了


这是我用go测试的连接负载均衡数据库,有两次很慢,不确定是不是回路问题

最后解决了吗?

还在等新的环境。。。

此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。