ocp升级ob提示:缺少 4.2.1.5-105000032024041915 架构的软件包

【 使用环境 】 测试环境
【 使用版本 】
ob 4.2.1.3
ocp 4.2.1-20231208144448
需要升级的版本4.2.1.5

【问题描述】通过ocp将ob 4.2.1.3升级到4.2.1.5报错:缺少 4.2.1.5-105000032024041915 架构的软件包
【复现路径】问题出现前后相关操作
升级前已经将el8的包都上传到ocp


点击集群升级版本


升级时也显示出我要升级的版本了

但是点击升级后报错:缺少 4.2.1.5-105000032024041915 架构的软件包

【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):

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


shang上传一个rpm包看看

我已经把所有的软件包都上传上去了,我把el7(实际我只需要el8)的libs包删除了在这里又上传了一下也不行

1。 看下软件包:默认再 /home/root/software/sys-package
2. obd mirror list local 看看

image
点击下这的上传看看有什么提示嘛。

点击上传会让上传一个rpm包,也不知道到底缺什么包

我随便上传一个ob的el7的libs包,然后


又回到了错误界面

ocp日志麻烦提供下

access-tail1000.log (80.0 KB)
ocp-server-tail10000.log (947.8 KB)

一,获取详细信息

1.麻烦获取下这个操作获取下请求的的trace_id

1、在浏览器页面按下F12键,打开开发者工具页面。

2、在开发者工具页面,单击Network。

3、在OCP上执行相关请求,重新进行升级操作,复现问题。

4、在开发者工具页面的Name页签,单击对应的API操作,找到Status为500的请求,通常以api.json开头。

5、双击这个请求,在Response窗口中找到目标请求的trace_id值。


2.取下这个期间OCP的日志

二,尝试操作
1.可以尝试重启OCP容器,重新尝试
2.可以尝试更换浏览器,或者清除下浏览器缓存,重新进行尝试

非常奇怪的是错误发生时,没有status为500的请求


只有一条status为200请求
url:http://xx.xx.xx.24:8080/api/v2/ob/clusters/3/upgradePath?operatingSystem=el8&destVersion=4.2.1.5-105000032024041915
Response为

{
    "data": {
        "clusters": [
            {
                "id": 3,
                "name": "dora",
                "obClusterId": xxxxxxx82,
                "type": "PRIMARY",
                "zones": [
                    {
                        "architecture": "x86_64",
                        "name": "zone1"
                    },
                    {
                        "architecture": "x86_64",
                        "name": "zone2"
                    },
                    {
                        "architecture": "x86_64",
                        "name": "zone3"
                    }
                ]
            }
        ],
        "path": [
            {
                "directUpgrade": false,
                "obVersion": "4.2.1.5-105000032024041915",
                "replaceBinary": true,
                "rpms": [
                    {
                        "clusterId": 3,
                        "zoneRpms": [
                            {
                                "architecture": "x86_64",
                                "zone": "zone1"
                            },
                            {
                                "architecture": "x86_64",
                                "zone": "zone2"
                            },
                            {
                                "architecture": "x86_64",
                                "zone": "zone3"
                            }
                        ]
                    }
                ]
            }
        ]
    },
    "duration": 82,
    "server": "acd8bf16e8",
    "status": 200,
    "successful": true,
    "timestamp": "2024-04-28T15:16:17.812+08:00",
    "traceId": "cf7ce432a9b24af0"
}

我尝试搜索cf7ce432a9b24af0相关的日志也没有

我也尝试在无痕窗口或者更换浏览器都是一样的错误

之前的架构和系统是不是所有主机都是 x86_64 和 el8 的,还有几个其他类型的软件包,可以尝试删除掉试试看,只保留 el8 的 oceanbase-ce, oceanbase-ce-libs, oceanbase-ce-utils,
image

所有主机均为x86_64的Anolis8.8,集群安装时就是用el8的包安装上的,这两个包原本没上传,因为提示缺包我才加上的,现在又删除了,依然还是一样的错误


怀疑是包不完整的问题,
建议把软件包都删除掉或者将不需要的软件包删除,并且重新上传对应升级版本的压缩包尝试看看

不行,我之前在阿里云镜像站上下载的,我把包删除了,又在官方软件下载中心下了一次上传,还是一样的结果 :joy:

软件包管理和错误信息、日志麻烦再提供下。

这个不是吗

从日志里看当前的请求一直在执行中,导致接下里的请求无法进行,可以重启下ocp后重新尝试下呢

还是不行,4.2.1.5之前还有什么比较稳定的版本吗,我想先升级一下一个比较稳定的版本,可以验证升级的可行性,可以验证到底是ocp问题还是新版本的问题,即使4.2.1.5升级不上去,先停留在一个比较稳定的版本等等更新也行