【 TiDB 使用环境】生产环境 /测试/ Poc
【 TiDB 版本】
【复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
【资源配置】
【TiDB Operator 版本】:
【K8s 版本】:
【附件:截图/日志/监控】
在kubeblocks 中使用tidb,无法连接到tidb server
查看集群状态:
[root@rocky9 ~]# kbcli clusterdefinition list | egrep 'NAME|tidb'
NAME MAIN-COMPONENT-NAME STATUS AGE
tidb pd Available 19h
pd是入口,会影响 kbcli connect 选择的 service
main component 是 clusterdefinition 中第一个 componentDef 的名字 (.spec.componentDefs[0].name),想要调整顺序可以修改 clusterdefinition
[root@rocky9 ~]# kbcli cluster connect tidb-demo
Connect to instance tidb-demo-pd-0
error: unsupported engine type: tidb
另外,能否升级下版本到 v7.5.1 ?
pd是入口,会影响 kbcli connect 选择的 service
kbcli connect 可以传入 --component
参数来指定要连接哪个组件。
error: unsupported engine type: tidb
这个错误是 kubeblocks/pkg/lorry/engines/register/managers.go at ec98faed7e4782043efe32076b49351c3a783b28 · apecloud/kubeblocks · GitHub 这里报的,要解决这个错误,需要做类似 RegisterEngine(models.TiDB, "", tidb.NewManager, mysql.NewCommands)
这样的注册。然后执行 kbcli cluster connect
时会先 kubectl exec
进入 TiDB Pod,再执行 mysql xxx
这样的命令。不过,TiDB image 是没有包含 mysql client 的 binary 的,所以这样执行时也还是会失败。
另外,能否升级下版本到 v7.5.1 ?
通过 Helm Chart 安装 TiDB addon 时,可以通过 .image.tag
指定 TiDB 版本, ref kubeblocks-addons/addons/tidb/values.yaml at bf57f6d7ed0987b900fe95e7c2485b4330004c50 · apecloud/kubeblocks-addons · GitHub
1 个赞
那这样使用kb自带命令就没法连接到tidb集群了是么?
我是指默认的那个版本,可以升级一下吗?
没办法用 kbcli connect
连。要用的话,需要重新 build TiDB image 把 mysql client 加进去,再修改上面说到的 Engine 注册逻辑。
此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。