OB 创建 Binlog 任务 任务提示Binlog service configuration item initialization failed

【 使用环境 】测试环境
【 OB or 其他组件 】obbinlog
【 使用版本 】obbinlog-ce-4.2.3
【问题描述】OB 创建 Binlog 任务 任务提示Binlog service configuration item initialization failed
【复现路径】问题出现前后相关操作
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):

相关环境说明:
OBServer 版本:OceanBase_CE 4.3.5.1
ob-configserver 版本:ob-configserver-1.0.1

binlog 实例创建语句如下:

MySQL [(none)]> CREATE BINLOG FOR TENANT `ob_1panel`.`oceanbase`  TO USER `root` PASSWORD `***`   WITH CLUSTER URL 'http://0.0.0.0:8080/services?Action=ObRootServiceInfo&ObCluster=ob_1panel&version=2' , REPLICATE NUM 1;
ERROR 1236 (HY000): Binlog service configuration item initialization failed

在obbinlog 日志中,则是提示解析obconfig_url 失败Failed to parse cluster url response
截取部分日志如下:

ob_access.cpp(59): Failed to parse cluster url response:{"Code":200,"Message":"successful","Success":true,"Data":[{"ObClusterId":1746683032,"ObRegionId":1746683032,"ObCluster":"ob_1panel","ObRegion":"ob_1panel","ReadonlyRsList":[],"RsList":[{"address":"127.0.0.1:2882","role":"LEADER","sql_port":2881}],"Type":"PRIMARY","timestamp":1652419587417171}],"Trace":"0de4bf358a8acb8d","Server":"10.206.0.5","Cost":0}
, Invalid or None "Data"

相关日志打包如下:
log_0510.tar.gz (6.7 KB)

麻烦各位大佬帮忙看一下,十分感谢

1 个赞

学习了

找到原因了,跟obconfig_url 的version参数有关,version=2 时无法正常解析,version=1 时能够正常解析
原 obconfig_url :

http://0.0.0.0:8080/services?Action=ObRootServiceInfo&ObCluster=ob_1panel&version=2

下面 obconfig_url 可以正常创建binlog 实例

http://0.0.0.0:8080/services?Action=ObRootServiceInfo&ObCluster=ob_1panel&version=1

1 个赞

但是创建了binlog 实例后,binlog 实例状态为offline

初始状态:
MySQL [(none)]>  SHOW BINLOG INSTANCES\G
*************************** 1. row ***************************
           name: fon1ksya66
     ob_cluster: ob_1panel
      ob_tenant: oceanbase
             ip: 127.0.0.1
           port: 8101
           zone: 
         region: 
          group: 
        running: Yes
          state: Running
  obcdc_running: Yes
    obcdc_state: Running
   service_mode: enabled
convert_running: No
  convert_delay: NULL
    convert_rps: NULL
    convert_eps: NULL
   convert_iops: NULL
        dumpers: NULL
        version: 4.2.3-1cf30a786ba8c4984ddb24d5273a1d826b2ab11e
       odp_addr: NULL
1 row in set (0.01 sec)

过了几分钟后:
MySQL [(none)]>  SHOW BINLOG INSTANCES\G
*************************** 1. row ***************************
           name: fon1ksya66
     ob_cluster: ob_1panel
      ob_tenant: oceanbase
             ip: 127.0.0.1
           port: 8103
           zone: 
         region: 
          group: 
        running: No
          state: Offline
  obcdc_running: No
    obcdc_state: Offline
   service_mode: disabled
convert_running: No
  convert_delay: NULL
    convert_rps: NULL
    convert_eps: NULL
   convert_iops: NULL
        dumpers: NULL
        version: 4.2.3-1cf30a786ba8c4984ddb24d5273a1d826b2ab11e
       odp_addr: NULL
1 row in set (0.02 sec)

obbinlog 截取部分日志如下:

[2025-05-10 17:48:46.551731] [error] io.cpp(188): Failed to connect to server: ./run/fon1ksya66/binlog_instance.socket(server_sun.sun_path: ./run/fon1ksya66/binlog_instance.socket), error: 111(Connection refused)
[2025-05-10 17:48:46.551758] [error] mysql_protocol.cpp(66): Failed to connect to server: ./run/fon1ksya66/binlog_instance.socket
[2025-05-10 17:48:46.551762] [error] instance_client.cpp(62): Failed to login binlog instance, is_local: true, addr: ./run/fon1ksya66/binlog_instance.socket, exceed uds len limit: false
[2025-05-10 17:48:46.551764] [error] instance_client.cpp(42): Failed to connect to instance: fon1ksya66, server addr: ./run/fon1ksya66/binlog_instance.socket
[2025-05-10 17:48:46.551766] [error] database_protocol.cpp(3654): Failed to detect binlog instance: fon1ksya66
[2025-05-10 17:48:46.551771] [error] ob_mysql_packet.cpp(140): Failed to send packet, error: 9(Bad file descriptor)
[2025-05-10 17:48:46.551774] [error] mysql_protocol.cpp(224): Failed to send query packet to server: ./run/fon1ksya66/binlog_instance.socket
[2025-05-10 17:48:46.551776] [error] database_protocol.cpp(3419): Failed to show binlog dumplist for instance:fon1ksya66
[2025-05-10 17:48:47.564498] [error] io.cpp(188): Failed to connect to server: ./run/fon1ksya66/binlog_instance.socket(server_sun.sun_path: ./run/fon1ksya66/binlog_instance.socket), error: 111(Connection refused)

版本兼容性问题,更换 binlog424 后问题顺利解决了

1 个赞