集群启用 TLS 的情况下,dumpling 无法自动设置 GC 时间?

【 TiDB 使用环境】测试
【 TiDB 版本】8.1
【遇到的问题:问题现象及影响】

dumpling 给出如下警告信息,PD 地址 // 后面有特殊字符,不知道是不支持 TLS 启用的集群,还是捕获的地址出了问题

{“level”:“warn”,“ts”:“2024-09-12T16:49:24.948662+0800”,“logger”:“etcd-client”,

“caller”:“v3@v3.5.12/retry_interceptor.go:62”,

“msg”:“retrying of unary invoker failed”,

“target”:“etcd-endpoints://0xc000bece00/xx.xx.xx.xx:2379”,

“attempt”:0,“error”:“rpc error: code = DeadlineExceeded desc = latest balancer error: last connection error: connection error: desc = "error reading server preface: read tcp xx.xx.xx.xx:24338->xx.xx.xx.xx:2379: read: connection reset by peer"”}

加这几个参数试试:
image

用法参考专栏 - TiDB 生产集群与加密通讯TLS的辛酸苦辣 - 工具篇 | TiDB 社区

1 个赞

我验证了,这个是用来连接DB的,不是用来连接PD的

这个警告应该不是设置GC,dumpling设置GC是通过连接到数据库后用sql语句实现的。
看log是dumpling节点访问pd etcd报错,而且也不是走http协议,感觉和TLS关系不大。
应该不影响dumpling导出吧。

如果你的集群启用了 TLS,确保你的 Dumpling 工具也配置了正确的证书和密钥文件。

现在就是不知道在哪里配置这个
按照官方文档
在以下场景中,Dumpling 无法自动调整 GC 时间:

  • 数据量非常大(超过 1 TB)。
  • Dumpling 无法直接连接到 PD,例如 TiDB 集群运行在 TiDB Cloud 上,或者 TiDB 集群运行在 Kubernetes 上且与 Dumpling 分离。

在这些场景中,你必须提前手动调长 GC 时间

是 https 协议去连接 PD 出现的警告
etcd-endpoints://0xc000bece00/xx.xx.xx.xx:2379

有完整日志嘛?

没有其他信息了,就提问时给出的那个信息,那个就是工具的输出日志信息

–ca /path/to/ca.pem --ssl-cert /path/to/client.pem --ssl-key /path/to/client-key.pem

加了这个也不行的话,就手动改 tidb gc 吧。