【 使用环境 】测试环境
【 OB or 其他组件 】OB
【 使用版本 】4.2.1-ce-bp10 这份源码自己编译完成 编译出来之后显示的版本是oceanbase-ce-4.3.5
【问题描述】自己编译源码成功,使用./tools/deploy/obd.sh deploy -c ./tools/deploy/single.yaml部署之后报错:
OBD-2002: Failed to start server1(127.0.0.1) observer
【复现路径】问题出现前后相关操作
【附件及日志】见附件
查询内存信息:
附件1:observer.log:
observer.log (109.7 KB)
附件2:obd.log
obd.log (344.8 KB)
另外,我是在Windows服务器上,使用wsl安装Ubuntu 22.04服务器上跑的这些过程。
1.4.2.1-ce-bp10 这份源码自己编译完成 编译出来之后显示的版本是oceanbase-ce-4.3.5?
–看日志是安装的当时最新镜像,即4.3.5版本
2.OBD-2002: Failed to start server1(127.0.0.1) observer
–看日志是log_pool_path,log_disk_base_path等目录因权限问题创建失败
3.建议部署前先使用obdiag进行部署环境检查,将有问题的项修复掉以后再部署
obdiag check --cases=build_before
https://www.oceanbase.com/docs/common-obdiag-cn-1000000001768218
[2024-12-13 18:49:09.140] [e1a27652-b93f-11ef-a01a-200db044d165] [DEBUG] - opts: {'name': 'oceanbase-ce', 'tag': 'latest', 'version': '4.3.5.0', 'path': '/mnt/c/work/Projects/oceanbase-new/oceanbase/tools/deploy', 'force': True}
[2024-12-13 18:49:09.140] [e1a27652-b93f-11ef-a01a-200db044d165] [DEBUG] - mkdir /mnt/c/work/Projects/oceanbase-new/oceanbase/tools/deploy/.obd/plugins
[2024-12-13 18:49:09.141] [e1a27652-b93f-11ef-a01a-200db044d165] [DEBUG] - Found oceanbase-ce-install-4.0.0.0 for oceanbase-ce-4.3.5.0
[2024-12-13 18:49:09.149] [e1a27652-b93f-11ef-a01a-200db044d165] [INFO] Package
[2024-12-13 18:49:18.854] [e1a27652-b93f-11ef-a01a-200db044d165] [INFO] name: oceanbase-ce
[2024-12-13 18:49:18.855] [e1a27652-b93f-11ef-a01a-200db044d165] [INFO] version: 4.3.5.0
[2024-12-13 18:49:18.855] [e1a27652-b93f-11ef-a01a-200db044d165] [INFO] release:20241213184909
[2024-12-13 18:49:18.855] [e1a27652-b93f-11ef-a01a-200db044d165] [INFO] arch: x86_64
[2024-12-13 18:49:18.855] [e1a27652-b93f-11ef-a01a-200db044d165] [INFO] md5: d1fcd43ed72823e860da9f4b118ae348
参考下
使用命令行部署 OceanBase 数据库生产环境
https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000001429336
部署前配置
https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000001431675
谢谢,那请问这个问题怎么解决呢?我已经是root用户去部署了 按理说它要啥权限都行。我也试了用该用户root去建相关目录和文件,都可以建立出来,但重新部署后,自己建的会全部清理掉。
这个我也试了,反而引入了新问题:
root@sunways:/usr/bin# /mnt/c/work/Projects/obdiag-2.6.0/main.py display-trace ffeaddc6-bc40-11ef-8ee6-200db044d165
[2024-12-17 14:34:42.950] [DEBUG] - cmd: /mnt/c/work/Projects/obdiag-2.6.0/main.py check
[2024-12-17 14:34:42.950] [DEBUG] - opts: {‘inner_config’: None, ‘cases’: ‘build_before’, ‘obproxy_cases’: None, ‘store_dir’: ‘./check_report/’, ‘report_type’: ‘table’, ‘c’: ‘/root/.obdiag/config.yml’, ‘config’: None}
[2024-12-17 14:34:42.950] [DEBUG] - mkdir /mnt/c/work/Projects/obdiag-2.6.0/conf/inner_config.yml
[2024-12-17 14:34:42.954] [DEBUG] - mkdir /root/.obdiag/config.yml
[2024-12-17 14:34:42.956] [INFO] check start …
[2024-12-17 14:34:42.959] [ERROR] command failed. Please contact OceanBase community. e: Missing required configuration values in ob_cluster or tenant_sys
[2024-12-17 14:34:42.960] [INFO] Trace ID: ffeaddc6-bc40-11ef-8ee6-200db044d165
[2024-12-17 14:34:42.963] [INFO] If you want to view detailed obdiag logs, please run: /mnt/c/work/Projects/obdiag-2.6.0/main.py display-trace ffeaddc6-bc40-11ef-8ee6-200db044d165
你按照部署前配置操作一遍,不要使用root用户部署
这个是运行obdiag check --cases=build_before报的错误吗?
麻烦发下包含运行命令的报错截图
我是按照开源手册里的步骤执行的
https://oceanbase.github.io/oceanbase/build-and-run/
这里也没有说要自己配置磁盘。
我也看到了它自己会在这里自己创建相关目录,
那我们以后到底以你那边可选的手册为准还是以开源网站的说明为准?
标准部署是参考官方文档的,开源手册这个我找相应的同学咨询下
我看到你用的系统是ubuntu 22.04,这是你的docker还是虚拟机?
另外,你是把windows系统上的某个文件夹mount到ubuntu了吗?
你直接用ubuntu 上的文件系统试试?先不要把文件和部署目录放在Windows上。
我是用WSL装的Ubuntu,然后c盘mount到Ubuntu的/mnt/c上去了(系统默认自己会做的这个步骤)。
另外,我已在Ubuntu自己的目录/home/ob 和 /run/ob都试了一下 还是报同样的错。
不好说,错误的原因千千万,不过可以快速的尝试一下。
看起来OBD在WSL中获取的内存信息是错误的,cat /proc/meminfo 看看内存信息是否正确啊。