【 使用环境 】生产环境 or 测试环境
【 OB or 其他组件 】
【 使用版本 】
【问题描述】
OMS添加源数据为ob时需要填入configurl,结果报错了
我手动curl了下,需要加引号才行,不加引号就是上图那个报错
-bash-4.2$ curl http://10.47.182.79:8080/services?Action=ObRootServiceInfo&User_ID=alibaba&UID=ocpmaster&ObRegion=ob_hd
[1] 11699
[2] 11700
[3] 11701
-bash-4.2$ -bash: UID: readonly variable
{“Code”:2010,“Cost”:1,“Message”:“Invalid request parameter. Reason: ObCluster or ObRegion is required”,“Server”:“b5aafd077a”,“Success”:false,“Trace”:“c15c66ca02ef478f”}
[1] Done curl http://10.47.182.79:8080/services?Action=ObRootServiceInfo
[2]- Done User_ID=alibaba
[3]+ Exit 1 UID=ocpmaster
-bash-4.2$
-bash-4.2$ curl ‘http://10.47.182.79:8080/services?Action=ObRootServiceInfo&User_ID=alibaba&UID=ocpmaster&ObRegion=ob_hd ’
{“Code”:200,“Cost”:1,“Data”:{“ObCluster”:“ob_hd”,“ObClusterId”:1,“ObRegion”:“ob_hd”,“ObRegionId”:1,“ReadonlyRsList”:[],“RsList”:[{“address”:“10.47.182.76:2882”,“role”:“LEADER”,“sql_port”:2881},{“address”:“10.47.182.77:2882”,“role”:“FOLLOWER”,“sql_port”:2881},{“address”:“10.47.182.78:2882”,“role”:“FOLLOWER”,“sql_port”:2881}],“Type”:“PRIMARY”,“timestamp”:1725351211523000},“Message”:“successful”,“Server”:“b5aafd077a”,“Success”:true,“Trace”:“dd07cee6b40a4728”}
我改成rootservice_list也报错,一定要url格式
啥情况,感觉有点搞笑。。
【复现路径】问题出现前后相关操作
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):
【SOP系列 22 】——故障诊断第一步(自助诊断和诊断信息收集)
【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手 ] 即可召唤小助手,欢迎试用!
3 个赞
论坛小助手
2024 年9 月 3 日 16:17
#3
用户问题: “在 OMS 中添加 OceanBase 配置 URL 时报告了无效请求参数的错误,提示需要 ObCluster 或 ObRegion。”
根据您的描述,这个问题与 OceanBase 集群的配置有关,但并不直接对应于 obdiag
工具预定义的任何特定的日志采集或根因分析场景。不过,为了更好地理解问题并提供进一步的帮助,我们可以从集群的基础信息入手,这有助于确认集群的基本设置是否正确。
推荐使用 obdiag 工具进行基础信息的日志采集,并且将采集到的日志提供给我们以便确认问题所在。
日志采集场景: 集群基础信息
日志采集命令: obdiag gather scene run --scene=observer.base
请您执行上述命令并将采集到的日志压缩包发送给我们。这将帮助我们更准确地定位问题所在。
为了进一步了解问题,请您提供以下信息:
您是在哪个界面尝试添加 OceanBase 配置 URL 的?是通过图形界面还是命令行?
在添加配置 URL 时,您是否指定了正确的 ObCluster
和 ObRegion
参数?
您能否提供尝试添加的配置 URL 的具体格式或示例?
您是否尝试过查看集群的当前配置 (cluster name
)?可以通过执行 show parameters where name = 'cluster'
来获取。
具体信息可参考以下文档:
附上敏捷诊断工具 obdiag 使用帮助链接
3 个赞
我填的那个值就是 show parameters where name = 'cluster'
获取的呀
都手动curl成功了,就是需要加引号
3 个赞
1.界面就是数据源管理-添加数据源
2.版本号: 4.2.4_CE
3.没有其他参数,只有必填的
4.具体错误就是返回{“Code”:2010,“Cost”:1,“Message”:“Invalid request parameter. Reason: ObCluster or ObRegion is required”,“Server”:“b5aafd077a”,“Success”:false,“Trace”:“c54a309efe7c4cd9”}
手动curl如果不加引号就是报这个错
2 个赞
论坛小助手
2024 年9 月 3 日 16:51
#10
感谢您提供的详细信息。根据您提供的截图和描述,您在OMS社区版4.2.4_CE版本中尝试添加OceanBase数据源时遇到了错误,错误信息表明缺少必要的ObCluster
或ObRegion
参数。然而,您已经通过show parameters where name = 'cluster'
命令确认了集群名称,并且手动通过curl命令验证了配置URL的有效性,只是在不加引号的情况下会出现错误。
针对您的问题,以下是可能的解决方案:
1. 确认ObCluster
或ObRegion
参数
在OMS平台中添加数据源时,ObCluster
或ObRegion
是必须填写的参数之一。请确保您在填写Configurl
或rootservice
时,也正确地指定了ObCluster
或ObRegion
。
2. 引号问题
从您的描述来看,手动通过curl命令时,如果在URL字符串中加上引号,请求可以成功。这表明OMS平台在处理配置URL时可能也需要类似的格式。因此,请尝试在OMS平台中输入配置URL时加上双引号,例如:
"http://10.47.182.79:8080/services?Action=ObRootServiceInfo&User_ID=alibaba&UID=ocpmaster&ObRegion=ob_hd"
3. 检查其他参数
尽管您提到没有填写其他参数,但请再次确认是否所有必填字段都已经正确填写,包括但不限于:
数据源标识
地域(如果适用)
租户类型
输入方式
主机IP
端口
数据库用户名
数据库密码
4. 联系技术支持
如果以上步骤仍然无法解决问题,建议您联系OceanBase的技术支持团队,他们可以提供更详细的排查和解决方案。同时,您可以将此问题反馈给OMS平台的开发团队,以便他们能够优化用户体验。
希望这些建议对您有所帮助。如果还有其他问题,请随时告知。
具体信息可参考以下文档:
(小助手的答复已结束,如未能解决您的问题,请继续提问并等待其他同学的回复,谢谢!)
2 个赞
刘彻
2024 年9 月 3 日 17:04
#11
数据源ob是否是由ocp管理的,如果是则需要选择对应的ocp
只有不是ocp管理的,才能使用rootservice_list
1 个赞
淇铭
2024 年9 月 3 日 17:07
#12
你这个rootservice_list 是点击这个自动获取么?还是查询的rootservice_list自己输入的?
2 个赞
show parameters like ‘rootservice_list’
命令查到然后自己写上去的,现在已经解决了, 我改成只写一个10.47.182.76:2882:2881就可以了
2 个赞
大佬,还有个问题,正向切换这里的确认追平为啥不通过的,我源目端都没数据写入,等很久还是没通过
1 个赞
淇铭
2024 年9 月 3 日 17:20
#15
看着增量延迟比较大 你把增量的日志发一下 查看一下组件监控
应该是增量延迟导致 位点应该不一致
增量应该不会有延迟才对,从头到尾都没写入过数据
现在我手动在源端MySQL写了一条数据,然后就好了
淇铭
2024 年9 月 3 日 17:31
#18
你是mysql迁移到obmysql中是么?源端是mysql?应该是是你的源端没有数据进来 增量那边有延迟 现在好了么?
是的,MySQL迁移到obmysql
源端刚才没有数据写入的,迁移的数据都是以前的存量数据
所以根本没有增量数据,增量同步延迟却一直在增加
现在我主动写一条数据进去源端MySQL作为增量数据,等那一条数据同步过去后才ok的
淇铭
2024 年9 月 3 日 17:45
#22
是的 你全量迁移是mysql的存量数据 增量同步 才是你新增的数据 所以你插入一条数据 才会有增量 延迟才不会增加了
这样设计感觉怪怪的,得写点脏数据进去同步才会走下一步流程,要是有个功能让我们确认是否跳过这个检查就好了