centos7 安装报错

【 使用环境 】CentOS Linux 7 (Core)
【 OB or 其他组件 】
【 使用版本 】默认最新版本
【问题描述】安装后启动,查看状态显示启动失败
【复现路径】
yum install oceanbase-ce
systemctl start oceanbase
systemctl status oceanbase
【附件及日志】
● oceanbase.service - oceanbase
Loaded: loaded (/etc/systemd/system/oceanbase.service; disabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Fri 2024-03-01 14:48:03 CST; 2s ago
Process: 10187 ExecStart=/bin/bash /home/admin/oceanbase/profile/oceanbase-service.sh start (code=exited, status=1/FAILURE)
Main PID: 10187 (code=exited, status=1/FAILURE)
Status: “Service is ready”
Tasks: 15
Memory: 367.2M
CGroup: /system.slice/oceanbase.service
├─9349 /home/admin/oceanbase/bin/obshell daemon --ip 127.0.0.1 --port 2886
└─9370 /home/admin/oceanbase/bin/obshell server --ip 127.0.0.1 --port 2886

Mar 01 14:48:03 xmb-web01 bash[10187]: oceanbase service started at 2024-03-01 14:48:03
Mar 01 14:48:03 xmb-web01 bash[10187]: daemon process with PID 9349 is running.
Mar 01 14:48:03 xmb-web01 bash[10187]: The agent service is exist
Mar 01 14:48:03 xmb-web01 systemd[1]: Started oceanbase.
Mar 01 14:48:03 xmb-web01 bash[10187]: MASTER
Mar 01 14:48:03 xmb-web01 bash[10187]: The observer has been installed before
Mar 01 14:48:03 xmb-web01 bash[10187]: observer PID file not found.
Mar 01 14:48:03 xmb-web01 systemd[1]: oceanbase.service: main process exited, code=exited, status=1/FAILURE
Mar 01 14:48:03 xmb-web01 systemd[1]: Unit oceanbase.service entered failed state.
Mar 01 14:48:03 xmb-web01 systemd[1]: oceanbase.service failed.

这台机器之前安装过ob吗,能走到这里看到是组件返回告诉service脚本我是已经装过的

什么是ob,怎么看是否安装?怎么安装?

ob是oceanbase的简称,更详细的应该是:
ob安装的时候有一个小组件叫obshell会控制oceanbase
obshell组件返回告诉service脚本我是已经启动安装过的了

先ps -ef | grep observer看看是不是已经有一个observer了

什么是 OBD
这个是obd相关命令 集群命令组

安装ob可以根据文档来进行,前提是需要把部署前配置做好。
通过 OBD 白屏部署 OceanBase 集群

root 14810 6174 0 16:02 pts/1 00:00:00 grep --color=auto observer

stop后再start也不行,还是一样的错误

obd日志麻烦提供下。(~/.obd/log/obd)

[root@xmb-web01 ~]# cat ~/.obd/log/obd
cat: /root/.obd/log/obd: No such file or directory

部署ob的方式是什么呢?(手动部署)(源码编译)亦或者obd命令部署的?

yum install oceanbase-ce

按照上面的文档链接部署下呢。

让我来吧,我是systemd这块的作者,其实我暂时只发布出来,离官宣还早,竟然发现了这个功能,给你点赞。

我刚刚试了一下,这个ob的包没有自动安装依赖libs,可能在stop然后start之后会造成obshell状态判断的缺失。

yum install oceanbase-ce oceanbase-ce-libs
systemctl start oceanbase
systemctl status oceanbase

1 个赞

重新整理一下环境吧,如果是容易的环境,可以直接铲掉容器或者虚拟机重新来

不容易的话,就 rm -rf /home/admin/oceanbase , rm -rf /var/lib/oceanbase

顺便看看有没有observer和obshell的进程存在,直接删掉

欢迎随时来找我提问

哪个文档?

删掉后启动报错了
[root@xmb-web01 ~]# systemctl start oceanbase
Job for oceanbase.service failed because the control process exited with error code. See “systemctl status oceanbase.service” and “journalctl -xe” for details.

OceanBase分布式数据库-海量数据 笔笔算数