社区4.0ocp启动失败

【 使用环境 】生产环境 or 测试环境

【 OB or 其他组件 】
ocp
【 使用版本 】4.0

【问题描述】清晰明确描述问题
原本是升级ocp版本的,然后先把ocp使用“ps -ef | grep ocp”这种方式将ocp相关的进程都杀掉了 个别的杀不掉,后面就去升级ocp了 在升级的过程中发现原ocp不需要停掉,就去按照文档中重启ocp了
docker restart ocp


【复现路径】问题出现前后相关操作


后面ocp就启动不起来了
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):





【SOP系列 22 】——故障诊断第一步(系统巡检和诊断信息收集)

正在执行升级


到现在2424.1.23 18:57分
ocp升级日志.txt (27.4 KB)

现阶段一直在检查中这个状态

目前原ocp暂时没启动起来
下面是 /tmp/ocp/log下面的 ocp.log 近期一部分的日志
ocp中tmp-ocp-log.txt (130.2 KB)

2024-01-23 19:31:42.502 ERROR 46667 — [main,] c.a.o.s.analyzer.OcpFailureAnalyzer : OCP startup check failed with cause:

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘ocpServerApplication’: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘ocpStartUpChecker’: Invocation of init method failed; nested exception is java.lang.Exception: OCP metadb and server time is not in-sync: db time = 2024-01-23T19:31:22.632+08:00, server time = 2024-01-23T19:31:42.444+08:00, max difference allowed is 1000 ms

看ocp metadb 和server时间不同步 ob时间 2024-01-23T19:31:22.632+08:00,server时间 2024-01-23T19:31:42.444+08:00,允许的最大差异为 1000 毫秒

怎么让他们统一呢?统一之后再次使用ocp重启命令尝试ocp是否可以重启成功,然后去做升级的事情吗?

ocp 这台服务器和另外ob集群时间不一致 ?

升级前的 ocp 版本和升级的目标版本分别是什么,目前最新的是 4.2.1 版本,如果升级前是容器形式部署的话,还是建议直接用容器形式升级到 4.2.1,可以参考这片文档
https://www.oceanbase.com/docs/common-ocp-1000000000401721

如果升级到 rpm 形式需要先升级到 4.0.3 以上才可以
但是看报错信息应该是时钟偏移的问题,需要配置一下服务器的时钟同步,保证部署 OCP 的机器和meta集群之间的时钟差 < 1s
https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000507671
最好去修改部署 OCP 的机器,让它和 OB 集群的时间同步

老师ntp检查发现服务器时间都不一样 必须停止ob server吗?直接执行ntpdate ntp_server_ip 这个命令是否会有什么后果

这种设置是不是不合规

是 observer 的时钟不一致吗,如果要调整 OB 的时钟,最好逐个停掉 observer 调整

用上面那种方法ocp可以正常启动了,停掉obsever风险太高了 目前是生产环境 当前是ocp4.0版本,现在在升级4.2版本,只不过一直在环境预检查页面 时间点长


4.0 的话,最好直接容器升级,rpm 形式的要 4.0.3 再往上升级

我下午看看如果还是停止的话,我换一下4.1然后使用容器升级试试看
谢谢老师的指点



当前ocp4.0.0升级到4.2.1
原ocp已经停掉了,查看了一下没有了ocp的进程 然后去设置参数 ,目前启动这块有点问题