magdb
2024 年2 月 4 日 10:30
1
【 TiDB 使用环境】生产环境
【 TiDB 版本】v7.1.3
【复现路径】TiDB dashboard → 日志搜索 ->tidb error
日志
【遇到的问题:问题现象及影响】tidb 节点出现大量 错误日志,[terror.go:324] [“encountered error”] [error=“close tcp 192.168.1.xx:4000->192.168.1.xxx:6364: use of closed network connection”] [stack=“github.com/pingcap/tidb/parser/terror.Log \n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/parser/terror/terror.go:324\ngithub.com/pingcap/tidb/server.(*Server).onConn\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/server/server.go:647”]。
tidb 节点前端有 haproxy和 keepalived 做高可用,不知道是否跟这个有关
【资源配置】
【附件:截图/日志/监控】
这个报错的大概意思是客户端来访问 tidb-server,TCP链接也建立成功了,然后tidb server需要返回结果或者检查链接情况时,发现被客户端断开了,所以tidb-server打印日志报错,说明遇到了异常现象。
看起来像是前端负载均衡层对后端tidb-server upstream 的探活心跳,请确认下负载均衡组件是否这个逻辑。
其次,可以确认业务是否有影响。
1 个赞
dba远航
(Ti D Ber M Lo7 Bqhk)
2024 年2 月 5 日 01:05
4
原来的网络连接已经关闭,结果节点还在使用原来的连接,就报错了,应该是存在异常断开的情况
这个应该是haproxy的配置问题吧,能贴下你的haproxy配置吗?
magdb
2024 年2 月 5 日 02:10
6
可以的,下面是我们haproxy 的配置,20/21 是后端 tidb 节点,haproxy 也部署在这两个节点上
server tidb-1 10.12.141.118:4000 check port 10080 send-proxy check inter 2000 rise 2 fall 3
我记得haproxy检测tidb的话,不能检测4000端口,要检测10080端口,你配置上这个试一下。。。check port 10080
kkpeter
(Upstream889)
2024 年2 月 5 日 03:19
9
请问下你们线上用haproxy ,有没有遇到什么坑
magdb
2024 年2 月 5 日 03:54
10
按照官方的配置,基本上没出什么问题,这个日志不知道算不算坑
magdb
2024 年2 月 5 日 06:15
12
直连需要业务支持,现在业务上没影响,所以也不想改直连
system
(system)
关闭
2024 年4 月 5 日 06:15
13
此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。