浪潮power架构服务器部署时对ce-libs的check失败

【 使用环境 】测试环境
【 OB or 其他组件 】OBD, oceanbase-ce
【 使用版本 】ob-deploy-2.9.0-1.el8.ppc64le.rpm ;
oceanbase-ce-4.2.1.7-107000162024060611.el8.ppc64le.rpm;
oceanbase-ce-libs-4.2.1.7-107000162024060611.el8.ppc64le.rpm;
oceanbase-ce-utils-4.2.1.7-107000162024060611.el8.ppc64le.rpm
【问题描述】我的机器是ppc64架构的,无法连接外网。按照部署文档,我将依赖所需的安装包都准备好了,最后执行 obd cluster deploy 进行部署时,有ERROR:Failed to install lib package for cluster servers。
【复现路径】问题出现前后相关操作

【附件及日志】
obd-log.zip (8.0 KB)
配置文件.zip (1.2 KB)

2 个赞

根据您提供的信息,您在浪潮 Power 架构服务器上部署 OceanBase 社区版时遇到了 Failed to install lib package for cluster servers 的错误。这个问题通常发生在依赖库检查失败时,尤其是在没有网络连接的情况下。以下是您可以尝试的一些解决方案:

1. 确认依赖库已正确安装

确保所有必要的依赖库已经正确安装。您可以手动检查并安装这些依赖库。根据您提供的安装包列表,您已经下载了 oceanbase-ce-libs,但可能还需要其他依赖库。

2. 检查配置文件

确保您的配置文件 mini-local-example.yaml 中没有错误。特别是检查以下部分:

  • servers 部分是否正确配置了服务器信息。
  • oceanbase-ce 组件下的 package 配置是否正确指向了您下载的安装包。

3. 手动安装依赖库

如果您已经下载了所有必要的依赖库,可以尝试手动安装这些库。例如:

rpm -ivh oceanbase-ce-libs-4.2.1.7-107000162024060611.el8.ppc64le.rpm

4. 检查日志

查看 obd 的日志文件,以获取更多详细的错误信息。您已经提供了日志文件,可以使用 obdiag 工具进一步分析这些日志。例如:

obdiag display-trace 5b17e8fc-bb50-11ef-8a17-50af732aadfF

5. 重新部署

如果上述步骤都没有解决问题,您可以尝试重新部署集群。首先删除现有的部署,然后重新部署:

obd cluster destroy obdi
obd cluster deploy obdi -c /opt/mini-local-example.yaml

6. 检查网络配置

虽然您提到机器无法连接外网,但确保内部网络配置正确,特别是 DNS 和主机名解析。

7. 联系技术支持

如果以上步骤都无法解决问题,建议联系 OceanBase 的技术支持团队,他们可以提供更专业的帮助。

希望这些步骤能帮助您解决问题。如果有任何进一步的问题或需要更多帮助,请随时告诉我。

更多信息请查看:

  1. 错误码
  2. OceanBase 安装部署工具 V2.8.0
  3. 通过 ODC 连接 OceanBase 数据库
  4. ob_error
  5. 4000 ~ 4499
  6. 0001 ~ 3999
  7. 8000 ~ 8999
  8. 4500 ~ 4999
2 个赞

操作系统版本,使用的是ob-all-in-one安装包么

操作系统是openeuler 24.03LTS
服务器cpu架构是power
安装方式不是ob-all-in-one,而是通过rpm包

1 个赞

感谢您提供的详细信息。根据您的描述,您正在使用 OpenEuler 24.03 LTS 操作系统,服务器 CPU 架构是 Power,安装方式是通过 RPM 包。您遇到的问题是 Failed to install lib package for cluster servers。

问题分析

  1. 依赖库问题:Failed to install lib package for cluster servers 错误通常表明某些依赖库未能正确安装。
  2. 架构兼容性:Power 架构可能需要特定的依赖库版本。
  3. 配置文件问题:配置文件中的某些设置可能导致依赖库检查失败。

解决步骤

1. 确认依赖库已正确安装

首先,确保所有必要的依赖库已经正确安装。您可以手动检查并安装这些依赖库。根据您提供的安装包列表,您已经下载了 oceanbase-ce-libs,但可能还需要其他依赖库。

rpm -q oceanbase-ce-libs

如果未安装,可以手动安装:

rpm -ivh oceanbase-ce-libs-4.2.1.7-107000162024060611.el8.ppc64le.rpm

2. 检查配置文件

确保您的配置文件 mini-local-example.yaml 中没有错误。特别是检查以下部分:

  • servers 部分是否正确配置了服务器信息。
  • oceanbase-ce 组件下的 package 配置是否正确指向了您下载的安装包。

示例配置文件:

name: obdi
obbhome: /home/admin/.oceanbase
cluster:
  servers:
    - name: server1
      ip: 127.0.0.1
      ssh_port: 22
      user: admin
      password: your_password
  oceanbase-ce:
    package: /path/to/oceanbase-ce-4.2.1.7-107000162024060611.el8.ppc64le.rpm
    home_path: /home/admin/obdi
    data_dir: /home/admin/obdi/data
    redo_dir: /home/admin/obdi/redo
    log_dir: /home/admin/obdi/log
    system_memory: 2G
    zone: zone1
    server_port: 2881
    rpc_port: 2882
    sql_port: 2883
    cluster_name: obdi
    cluster_id: 1
    zone_id: 1
    tenant_name: sys
    tenant_id: 1
    resource_pool_name: sys_pool
    unit_name: sys_unit
    unit_config:
      max_cpu: 2
      min_cpu: 1
      memory_size: 2G
      log_disk_size: 10G

3. 检查日志

查看 obd 的日志文件,以获取更多详细的错误信息。您已经提供了日志文件,可以使用 obdiag 工具进一步分析这些日志。例如:

obdiag display-trace 5b17e8fc-bb50-11ef-8a17-50af732aadfF

4. 重新部署

如果上述步骤都没有解决问题,您可以尝试重新部署集群。首先删除现有的部署,然后重新部署:

obd cluster destroy obdi
obd cluster deploy obdi -c /opt/mini-local-example.yaml

5. 检查网络配置

虽然您提到机器无法连接外网,但确保内部网络配置正确,特别是 DNS 和主机名解析。

6. 联系技术支持

如果以上步骤都无法解决问题,建议联系 OceanBase 的技术支持团队,他们可以提供更专业的帮助。

参考文档

  1. OceanBase 安装部署工具 V2.9.0
  2. 通过 RPM 包安装 OceanBase
  3. OceanBase 错误码

希望这些步骤能帮助您解决问题。如果有任何进一步的问题或需要更多帮助,请随时告诉我。

详情请参考:

  1. 使用命令行部署 OceanBase 数据库生产环境
  2. 通过 obd 白屏部署 OceanBase 集群
  3. OceanBase 术语
  4. 在 Kubernetes 环境中部署 OceanBase 集群
  5. 使用 systemd 部署 OceanBase 数据库
  6. 部署 FAQ
  7. (可选)查看资源
  8. OceanBase 数据库社区版部署概述

(小助手的答复已结束,如未能解决您的问题,请继续提问并等待其他同学的回复,谢谢!)

1 个赞

缺包问题,下载该包参考小助手的
rpm -ivh oceanbase-ce-libs-4.2.1.7-107000162024060611.el8.ppc64le.rpm

感觉不是缺包的问题,个人感觉是存在某些校验,导致的失败

报错信息如下:

下图是/root/.obd 的目录信息

1 个赞

欧拉2403系统支持安装ob,感觉还是缺包问题,推荐下载ob-all-in-one包,里面有安装ob所有的所需包

2 个赞

请问没有ppc64le 的ob-all-in-one 包呢?
我们的服务器的cpu 是 power 架构。因为在Oceanbase 官网没找到ob-all-in-one 的ppc64le 安装包,但是阿里云镜像站提供了 Oceanbase ppc64le 的 rpm 包,所以我前面才采用 rpm 的方式进行安装的。

image
这边查看发布记录,421bp7就支持ppc64le架构了应该不需要特定安装包。les和noles包区别是在于CPU架构是否为ARM,ARM的使用noles

那我下载V4.2.1_BP10 x86的 all in one 的包, 再根据手册流程安装部署就可以了吗?
对于我的power架构的服务器,还要额外做什么工作?

1 个赞

根据obd的文档部署即可,先部署obd然后安装ob,推荐使用obd web白屏化安装
https://www.oceanbase.com/docs/obd-cn

下载了all-in-one 的安装包,执行 ./install.sh 安装报错

软件包 ob-deploy-2.10.1-1.el8.x86_64 是针对 different 构架的

执行联网下载命令,无法正常进行

oceanbase-all-in-one: unsupported CPU type: ppc64le

https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000640297

使用systemd方法离线安装ob试试。obd不支持问题我去咨询一下

1 个赞


执行下这条命令看看具体的问题是什么。

使用systemd方法安装成功了。
使用这种方法安装时,提示缺少了两个依赖包:
一个是 jq ,一个是libonig.so.5() ,如下两图所示

安装了这两个依赖后,可以正常部署了。
之前使用OBD ,采用RPM 的方式进行部署,也正常了。之前RPM 的方式失败,并不会提示缺少哪些依赖,所以无法解决。现在使用systemd的方式在安装过程中,会提示缺少依赖,把依赖安装好后,后续便正常了。

1 个赞

后续发现是缺少了依赖了,但是这里报错并不会提示缺少哪些依赖。
对于power架构的openeuler24.03系统,缺少的依赖, 一个是 jq ,一个是libonig.so.5()

这个应该是RPM包的require,observer binary的执行应该不需要jq.

你安装jq后成功了吗?

安装jq后成功了

1 个赞

:+1: :+1: :+1: