k8s是否支持部署4.5.0版本?部署后用户初始化异常,mysql无法连接。

【 使用环境 】测试环境
【 OB or 其他组件 】OB
【 使用版本 】oceanbase/oceanbase-cloud-native:4.5.0.0-100000012025112711
【问题描述】
部署后mysql无法连接,显示没有权限。
mysql -h 10.244.136.20 -P 2881 -uproxyro -p’123’ -c -A
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1045 (42000): Access denied for user ‘proxyro’@‘xxx.xxx.xxx.xxx’ (using password: YES)

如下是operator的报错,请问需要怎么操作?Error 4012 (HY000): Timeout\nExecute sql failed, sql ALTER SYSTEM BOOTSTRAP ZONE ‘zone1’ SERVER ‘10.244.136.20:2882’, ZONE ‘zone2’ SERVER ‘10.244.136.48:2882’, ZONE ‘zone3’ SERVER ‘10.244.136.55:2882’

{"level":"INFO","ts":"2026-01-12T15:07:02+08:00","msg":"Execute bootstrap sql","controller":"obcluster","controllerGroup":"oceanbase.oceanbase.com","controllerKind":"OBCluster","OBCluster":{"name":"test","namespace":"oceanbase"},"namespace":"oceanbase","name":"test","reconcileID":"54218f32-6df5-4f2d-b941-63a60fcb6759","sql":"ALTER SYSTEM BOOTSTRAP ZONE 'zone1' SERVER '10.244.136.20:2882', ZONE 'zone2' SERVER '10.244.136.48:2882', ZONE 'zone3' SERVER '10.244.136.55:2882'","datasource":"address: 10.244.136.20, port: 2881, user: root, tenant: sys, database: "}
{"level":"INFO","ts":"2026-01-12T15:07:02+08:00","msg":"Execute sql ALTER SYSTEM BOOTSTRAP ZONE 'zone1' SERVER '10.244.136.20:2882', ZONE 'zone2' SERVER '10.244.136.48:2882', ZONE 'zone3' SERVER '10.244.136.55:2882' with param []","controller":"obcluster","controllerGroup":"oceanbase.oceanbase.com","controllerKind":"OBCluster","OBCluster":{"name":"test","namespace":"oceanbase"},"namespace":"oceanbase","name":"test","reconcileID":"54218f32-6df5-4f2d-b941-63a60fcb6759"}
{"level":"ERROR","ts":"2026-01-12T15:07:12+08:00","msg":"Execute sql failed","controller":"obcluster","controllerGroup":"oceanbase.oceanbase.com","controllerKind":"OBCluster","OBCluster":{"name":"test","namespace":"oceanbase"},"namespace":"oceanbase","name":"test","reconcileID":"54218f32-6df5-4f2d-b941-63a60fcb6759","error":"Execute sql failed, sql ALTER SYSTEM BOOTSTRAP ZONE 'zone1' SERVER '10.244.136.20:2882', ZONE 'zone2' SERVER '10.244.136.48:2882', ZONE 'zone3' SERVER '10.244.136.55:2882', param []: Error 4012 (HY000): Timeout","errorVerbose":"Error 4012 (HY000): Timeout\nExecute sql failed, sql ALTER SYSTEM BOOTSTRAP ZONE 'zone1' SERVER '10.244.136.20:2882', ZONE 'zone2' SERVER '10.244.136.48:2882', ZONE 'zone3' SERVER '10.244.136.55:2882', param []\ngithub.com/oceanbase/ob-operator/pkg/oceanbase-sdk/operation.(*OceanbaseOperationManager).ExecWithTimeout\n\t/workspace/pkg/oceanbase-sdk/operation/manager.go:53\ngithub.com/oceanbase/ob-operator/pkg/oceanbase-sdk/operation.(*OceanbaseOperationManager).Bootstrap\n\t/workspace/pkg/oceanbase-sdk/operation/cluster.go:35\ngithub.com/oceanbase/ob-operator/internal/resource/obcluster.Bootstrap\n\t/workspace/internal/resource/obcluster/obcluster_task.go:269\ngithub.com/oceanbase/ob-operator/pkg/task/builder.taskMap[...].GetTask.func1\n\t/workspace/pkg/task/builder/task_builder.go:70\ngithub.com/oceanbase/ob-operator/pkg/task.runTask\n\t/workspace/pkg/task/task_manager.go:56\nruntime.goexit\n\t/usr/local/go/src/runtime/asm_amd64.s:1695","stacktrace":"github.com/oceanbase/ob-operator/pkg/oceanbase-sdk/operation.(*OceanbaseOperationManager).ExecWithTimeout\n\t/workspace/pkg/oceanbase-sdk/operation/manager.go:54\ngithub.com/oceanbase/ob-operator/pkg/oceanbase-sdk/operation.(*OceanbaseOperationManager).Bootstrap\n\t/workspace/pkg/oceanbase-sdk/operation/cluster.go:35\ngithub.com/oceanbase/ob-operator/internal/resource/obcluster.Bootstrap\n\t/workspace/internal/resource/obcluster/obcluster_task.go:269\ngithub.com/oceanbase/ob-operator/pkg/task/builder.taskMap[...].GetTask.func1\n\t/workspace/pkg/task/builder/task_builder.go:70\ngithub.com/oceanbase/ob-operator/pkg/task.runTask\n\t/workspace/pkg/task/task_manager.go:56"}
{"level":"ERROR","ts":"2026-01-12T15:07:12+08:00","msg":"Got exception when bootstrap","controller":"obcluster","controllerGroup":"oceanbase.oceanbase.com","controllerKind":"OBCluster","OBCluster":{"name":"test","namespace":"oceanbase"},"namespace":"oceanbase","name":"test","reconcileID":"54218f32-6df5-4f2d-b941-63a60fcb6759","error":"Execute sql failed, sql ALTER SYSTEM BOOTSTRAP ZONE 'zone1' SERVER '10.244.136.20:2882', ZONE 'zone2' SERVER '10.244.136.48:2882', ZONE 'zone3' SERVER '10.244.136.55:2882', param []: Error 4012 (HY000): Timeout","errorVerbose":"Error 4012 (HY000): Timeout\nExecute sql failed, sql ALTER SYSTEM BOOTSTRAP ZONE 'zone1' SERVER '10.244.136.20:2882', ZONE 'zone2' SERVER '10.244.136.48:2882', ZONE 'zone3' SERVER '10.244.136.55:2882', param []\ngithub.com/oceanbase/ob-operator/pkg/oceanbase-sdk/operation.(*OceanbaseOperationManager).ExecWithTimeout\n\t/workspace/pkg/oceanbase-sdk/operation/manager.go:53\ngithub.com/oceanbase/ob-operator/pkg/oceanbase-sdk/operation.(*OceanbaseOperationManager).Bootstrap\n\t/workspace/pkg/oceanbase-sdk/operation/cluster.go:35\ngithub.com/oceanbase/ob-operator/internal/resource/obcluster.Bootstrap\n\t/workspace/internal/resource/obcluster/obcluster_task.go:269\ngithub.com/oceanbase/ob-operator/pkg/task/builder.taskMap[...].GetTask.func1\n\t/workspace/pkg/task/builder/task_builder.go:70\ngithub.com/oceanbase/ob-operator/pkg/task.runTask\n\t/workspace/pkg/task/task_manager.go:56\nruntime.goexit\n\t/usr/local/go/src/runtime/asm_amd64.s:1695","stacktrace":"github.com/oceanbase/ob-operator/pkg/oceanbase-sdk/operation.(*OceanbaseOperationManager).Bootstrap\n\t/workspace/pkg/oceanbase-sdk/operation/cluster.go:37\ngithub.com/oceanbase/ob-operator/internal/resource/obcluster.Bootstrap\n\t/workspace/internal/resource/obcluster/obcluster_task.go:269\ngithub.com/oceanbase/ob-operator/pkg/task/builder.taskMap[...].GetTask.func1\n\t/workspace/pkg/task/builder/task_builder.go:70\ngithub.com/oceanbase/ob-operator/pkg/task.runTask\n\t/workspace/pkg/task/task_manager.go:56"}
{"level":"ERROR","ts":"2026-01-12T15:07:12+08:00","msg":"bootstrap failed","controller":"obcluster","controllerGroup":"oceanbase.oceanbase.com","controllerKind":"OBCluster","OBCluster":{"name":"test","namespace":"oceanbase"},"namespace":"oceanbase","name":"test","reconcileID":"54218f32-6df5-4f2d-b941-63a60fcb6759","error":"Bootstrap: Execute sql failed, sql ALTER SYSTEM BOOTSTRAP ZONE 'zone1' SERVER '10.244.136.20:2882', ZONE 'zone2' SERVER '10.244.136.48:2882', ZONE 'zone3' SERVER '10.244.136.55:2882', param []: Error 4012 (HY000): Timeout","errorVerbose":"Error 4012 (HY000): Timeout\nExecute sql failed, sql ALTER SYSTEM BOOTSTRAP ZONE 'zone1' SERVER '10.244.136.20:2882', ZONE 'zone2' SERVER '10.244.136.48:2882', ZONE 'zone3' SERVER '10.244.136.55:2882', param []\ngithub.com/oceanbase/ob-operator/pkg/oceanbase-sdk/operation.(*OceanbaseOperationManager).ExecWithTimeout\n\t/workspace/pkg/oceanbase-sdk/operation/manager.go:53\ngithub.com/oceanbase/ob-operator/pkg/oceanbase-sdk/operation.(*OceanbaseOperationManager).Bootstrap\n\t/workspace/pkg/oceanbase-sdk/operation/cluster.go:35\ngithub.com/oceanbase/ob-operator/internal/resource/obcluster.Bootstrap\n\t/workspace/internal/resource/obcluster/obcluster_task.go:269\ngithub.com/oceanbase/ob-operator/pkg/task/builder.taskMap[...].GetTask.func1\n\t/workspace/pkg/task/builder/task_builder.go:70\ngithub.com/oceanbase/ob-operator/pkg/task.runTask\n\t/workspace/pkg/task/task_manager.go:56\nruntime.goexit\n\t/usr/local/go/src/runtime/asm_amd64.s:1695\nBootstrap\ngithub.com/oceanbase/ob-operator/pkg/oceanbase-sdk/operation.(*OceanbaseOperationManager).Bootstrap\n\t/workspace/pkg/oceanbase-sdk/operation/cluster.go:38\ngithub.com/oceanbase/ob-operator/internal/resource/obcluster.Bootstrap\n\t/workspace/internal/resource/obcluster/obcluster_task.go:269\ngithub.com/oceanbase/ob-operator/pkg/task/builder.taskMap[...].GetTask.func1\n\t/workspace/pkg/task/builder/task_builder.go:70\ngithub.com/oceanbase/ob-operator/pkg/task.runTask\n\t/workspace/pkg/task/task_manager.go:56\nruntime.goexit\n\t/usr/local/go/src/runtime/asm_amd64.s:1695","stacktrace":"github.com/oceanbase/ob-operator/internal/resource/obcluster.Bootstrap\n\t/workspace/internal/resource/obcluster/obcluster_task.go:271\ngithub.com/oceanbase/ob-operator/pkg/task/builder.taskMap[...].GetTask.func1\n\t/workspace/pkg/task/builder/task_builder.go:70\ngithub.com/oceanbase/ob-operator/pkg/task.runTask\n\t/workspace/pkg/task/task_manager.go:56"}
{"level":"ERROR","ts":"2026-01-12T15:07:13+08:00","msg":"Task failed","controller":"obcluster","controllerGroup":"oceanbase.oceanbase.com","controllerKind":"OBCluster","OBCluster":{"name":"test","namespace":"oceanbase"},"namespace":"oceanbase","name":"test","reconcileID":"aeba89f6-a675-47cf-a8df-a3eeb5806a42","flowName":"bootstrap obcluster","taskId":"ce1a8577-d4e5-4952-930d-c4f85868397e","taskName":"bootstrap","namespace":"oceanbase","resourceVersion":"147413520","resourceName":"test","error":"Bootstrap: Execute sql failed, sql ALTER SYSTEM BOOTSTRAP ZONE 'zone1' SERVER '10.244.136.20:2882', ZONE 'zone2' SERVER '10.244.136.48:2882', ZONE 'zone3' SERVER '10.244.136.55:2882', param []: Error 4012 (HY000): Timeout","errorVerbose":"Error 4012 (HY000): Timeout\nExecute sql failed, sql ALTER SYSTEM BOOTSTRAP ZONE 'zone1' SERVER '10.244.136.20:2882', ZONE 'zone2' SERVER '10.244.136.48:2882', ZONE 'zone3' SERVER '10.244.136.55:2882', param []\ngithub.com/oceanbase/ob-operator/pkg/oceanbase-sdk/operation.(*OceanbaseOperationManager).ExecWithTimeout\n\t/workspace/pkg/oceanbase-sdk/operation/manager.go:53\ngithub.com/oceanbase/ob-operator/pkg/oceanbase-sdk/operation.(*OceanbaseOperationManager).Bootstrap\n\t/workspace/pkg/oceanbase-sdk/operation/cluster.go:35\ngithub.com/oceanbase/ob-operator/internal/resource/obcluster.Bootstrap\n\t/workspace/internal/resource/obcluster/obcluster_task.go:269\ngithub.com/oceanbase/ob-operator/pkg/task/builder.taskMap[...].GetTask.func1\n\t/workspace/pkg/task/builder/task_builder.go:70\ngithub.com/oceanbase/ob-operator/pkg/task.runTask\n\t/workspace/pkg/task/task_manager.go:56\nruntime.goexit\n\t/usr/local/go/src/runtime/asm_amd64.s:1695\nBootstrap\ngithub.com/oceanbase/ob-operator/pkg/oceanbase-sdk/operation.(*OceanbaseOperationManager).Bootstrap\n\t/workspace/pkg/oceanbase-sdk/operation/cluster.go:38\ngithub.com/oceanbase/ob-operator/internal/resource/obcluster.Bootstrap\n\t/workspace/internal/resource/obcluster/obcluster_task.go:269\ngithub.com/oceanbase/ob-operator/pkg/task/builder.taskMap[...].GetTask.func1\n\t/workspace/pkg/task/builder/task_builder.go:70\ngithub.com/oceanbase/ob-operator/pkg/task.runTask\n\t/workspace/pkg/task/task_manager.go:56\nruntime.goexit\n\t/usr/local/go/src/runtime/asm_amd64.s:1695","stacktrace":"github.com/oceanbase/ob-operator/pkg/coordinator.(*Coordinator).executeTaskFlow\n\t/workspace/pkg/coordinator/coordinator.go:153\ngithub.com/oceanbase/ob-operator/pkg/coordinator.(*Coordinator).Coordinate\n\t/workspace/pkg/coordinator/coordinator.go:72\ngithub.com/oceanbase/ob-operator/internal/controller.(*OBClusterReconciler).Reconcile\n\t/workspace/internal/controller/obcluster_controller.go:76\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile\n\t/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.15.0/pkg/internal/controller/controller.go:118\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\t/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.15.0/pkg/internal/controller/controller.go:314\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\t/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.15.0/pkg/internal/controller/controller.go:265\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\t/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.15.0/pkg/internal/controller/controller.go:226"}
4 个赞

-u使用root@sys登陆试试

这个可以连接
mysql -h 10.244.136.52 -P 2881 -uroot@sys -c -A

BOOTSTRAP执行了1分多
mysql> ALTER SYSTEM BOOTSTRAP
→ ZONE ‘zone1’ SERVER ‘10.244.136.52:2882’,
→ ZONE ‘zone2’ SERVER ‘10.244.136.58:2882’,
→ ZONE ‘zone3’ SERVER ‘10.244.136.43:2882’;
Query OK, 0 rows affected (1 min 12.70 sec)

1 个赞

那这是正常的

需要用operator部署,不能手动执行BOOTSTRAP。

使用4.5.0镜像,就会出现初始化超时问题,然后手动BOOTSTRAP后也没有继续初始化。
oceanbase/oceanbase-cloud-native:4.5.0.0-100000012025112711
使用4.3.5镜像,就可以初始化成功。
oceanbase/oceanbase-cloud-native:4.3.5.0-100000202024123117

目前不清楚问题出在哪里,就只是改了个镜像版本。

这是部署的yaml文件

apiVersion: oceanbase.oceanbase.com/v1alpha1
kind: OBCluster
metadata:
  name: test
  namespace: oceanbase
spec:
  clusterName: obcluster
  clusterId: 1
  serviceAccount: "default"
  userSecrets:
    root: root-password
    proxyro: proxyro-password
  topology:
    - zone: zone1
      replica: 1
    - zone: zone2
      replica: 1
    - zone: zone3
      replica: 1
  observer:
    image: oceanbase/oceanbase-cloud-native:4.5.0.0-100000012025112711
    resource:
      cpu: 2
      memory: 16Gi
    storage:
      dataStorage:
        storageClass: open-local-lvm
        size: 50Gi
      redoLogStorage:
        storageClass: open-local-lvm
        size: 50Gi
      logStorage:
        storageClass: open-local-lvm
        size: 20Gi
  parameters:
  - name: system_memory
    value: 2G

本地测试是正常的,所使用的磁盘是什么类型,麻烦提供一份安装部署的observer日志

换了ssd盘后就部署成功了。有两个疑问

  1. 之前使用的是机械盘,operator执行10s就报超时错误了,不知道是哪里超时的。
  2. 之前机械盘出现报错后,还等待过挺长时间,operator没有任何后续操作,这个是不是有什么功能缺失?比如检查一下集群信息,重新执行BOOTSTRAP,或者检查到集群已经建好了继续初始化用户。

没在k8s中部署过,回头试试

ob_query_timeout这个变量默认是10s的。
你是是说 bootstrap失败后还等待过挺长时间,operator没有任何后续操作么

权限拒绝,是不是没有验证通过

  1. 请问ob_query_timeout参数如何在部署时直接配置到集群中?
    yaml文件这样配不生效。
  parameters:
  - name: connect_timeout
    value: "300"
  - name: ob_query_timeout
    value: "1000000000"

但查询结果不生效。

mysql> show variables like 'connect_timeout';
+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| connect_timeout | 10    |
+-----------------+-------+
1 row in set (0.00 sec)

mysql> show variables like 'ob_query_timeout';
+------------------+----------+
| Variable_name    | Value    |
+------------------+----------+
| ob_query_timeout | 10000000 |
+------------------+----------+
1 row in set (0.01 sec)

  1. operator执行一次bootstrap失败后,operator后续没有任何新日志了,我提问题时写的日志就是最后的日志。

我等会把operator和ob的日志都发出来,辛苦大佬帮忙看下。

集群bootstrap没成功,还没有加认证。

这是个变量不支持直接配置到yaml文件中

ob-log.zip (36.4 MB)
ob和ob-operator的日志

使用的ob-operator版本是多少

oceanbase/oceanbase-cloud-native:4.5.0.0-100000012025112711

这不是operator的版本,你使用的是ob cloud么

ob-operator-2.3.3 版本,在github上下载的
https://github.com/oceanbase/ob-operator/releases/download/ob-operator-2.3.3/ob-operator-2.3.3.tgz

2.3.4 版本中优化了一些超时时间的配置,bootstrap 那个 sql 一般是不需要设置 ob_query_timeout 的,如果 4.3.5 可以但是 4.5.0 不可以,那可能是 4.5.0 的 bootstrap 过程也受ob_query_timeout参数控制了,之前的版本可能是不受这个控制的,operator 2.3.4 预计今天会发出来,稍后可以用新版本试试看

学习到了