正常的,首先说就是符合常理。
haproxy 的 check 是探活,也就是检查后端的服务是否正常,基于 tcp 探活会尝试连接后端 tidb 的 4000 端口。
tidb server 跟 check 建立连接后会等待收消息,但是 check 建立连接成功就说明后端在线,然后关闭连接,这时候 tidb server 因为 check 的连接意外断开打印报错日志。
check 是定时的,所以不会有太多,影响不大,主要的影响是打印了太多 ERROR 日志,干扰排查问题。
tidb 集群 prometheus 探活 tidb 是用的 10080 端口,不是探活的 4000 端口,所以没有如上的报错日志,所以可以参考下是不是能设置下 haproxy check 的方式(端口)。