TiUP联网异常情况下,报错提示不准确

Bug 反馈
清晰准确地描述您发现的问题,提供任何可能复现问题的步骤有助于研发同学及时处理问题
【 TiDB 版本】V6.1.0 / V6.1.5 /V8.5.1
【 Bug 的影响】
1、安全启动初始化数据库报错异常终止,不能显示临时密码;
2、日常维护操作报错,如修改集群参数等;

【可能的问题复现步骤】
TiUP通过代理上网,在线部署TiDB Cluster;

【看到的非预期行为】
本故障处理过程见:

日志报错指向不明确,一直怀疑是:集群内网络通信异常 或 部署环境不兼容导致。实际是TiUP上网不正常。

[root@tidb30 ~]# tiup cluster start tidb-test –init
…………………………

[ Serial ] - UpdateTopology: cluster=tidb-test
{“level”:“warn”,“ts”:“2025-02-21T16:20:27.656+0800”,“logger”:“etcd-client”,“caller”:“v3@v3.5.7/retry_interceptor.go:62”,“msg”:“retrying of unary invoker failed”,“target”:“etcd-endpoints://0xc0002d3880/192.168.169.31:2379”,“attempt”:0,“error”:“rpc error: code = DeadlineExceeded desc = latest balancer error: last connection error: connection error: desc = "error reading server preface: http2: frame too large"”}
$ tiup cluster reload tidb-test
………………………………

[ Serial ] - UpdateTopology: cluster=tidb-test
{“level”:“warn”,“ts”:“2025-02-18T16:00:55.818+0800”,“logger”:“etcd-client”,“caller”:“v3@v3.5.7/retry_interceptor.go:62”,“msg”:“retrying of unary invoker failed”,“target”:“etcd-endpoints://0xc000410540/192.168.169.31:2379”,“attempt”:0,“error”:“rpc error: code = DeadlineExceeded desc = latest balancer error: last connection error: connection error: desc = "error reading server preface: http2: frame too large"”}

Error: context deadline exceeded

Verbose debug logs has been written to /home/tidb/.tiup/logs/tiup-cluster-debug-2025-02-18-16-00-55.log.

【期望看到的行为】
1.明确指向报错内容;
2.增加日志输出,TiUP报错不明朗;如PD、TiDB、TiKV等,这些节点中查相关报错均无有效信息;
3.健全安装检查;

【相关组件及具体版本】
TiUP: 1.16.1
TiDB :V6.1.0 / V6.1.5 /V8.5.1

【其他背景信息或者截图】
如集群拓扑,系统和内核版本,应用 app 信息等;如果问题跟 SQL 有关,请提供 SQL 语句和相关表的 Schema 信息;如果节点日志存在关键报错,请提供相关节点的日志内容或文件;如果一些业务敏感信息不便提供,请留下联系方式,我们与您私下沟通。

【疑问或建议】
TiUP 在线安装TiDB Cluster完毕,进入正常维护阶段后,重新加载集群参数 需要再次获取mirror中timestamp.json必要性?

离线环境搞个离线包做离线源即可。

在线安装每次会做一些校验和检测的。比如是否有更新版本的 tiup 等等

1 个赞

1.通常习惯,一套投产的系统,不会联网,小概率升级,但日常修改参数维护还是需要的。
2.现在的tiup 机制必须时刻连源,否则维护修改集群参数会失败;
3.官方文档没说源的必要性;

不会联网的话,在线安装不会成功的,你应该是在线安装的时候有网络,后续网络关了。
切换源:专栏 - 关于 tiup 在线源切换处理 | TiDB 社区
或者看下官网离线安装部分

关于官方文档没说源的必要性;这里已经反馈给文档团队,会补充这部分。

  • 安装及安装后一直联网,tiup通过代理上网。
  • 在本实验网络条件下,安装过程顺利;但受网络限制修改集群参数操作会提示:“error reading server preface: http2: frame too large”;该报错一开始想到是etcd和集群间网络问题,根本没想到tiup 连公网的影响。
  • 最后也是通过切换本地源解决的。
    具体解决过程参见:
    首次启动集群报错:error reading server preface: http2: frame too large
2 个赞

https://github.com/pingcap/docs-cn/pull/19943
官网强调了下 离线源的概念。

1 个赞

高效!

另:看官方文档没变,一般啥时候更新?

这是 pr,等合并。

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