关于容器中安装ob后observer启动的问题

【 使用环境 】生产环境 or 测试环境
测试环境
【 OB or 其他组件 】
OB
【 使用版本 】
ob v4
【问题描述】清晰明确描述问题

  1. docker 容器搭建,宿主机是 ubuntu20.04,容器环境是 centos7
    2.容器中安装完ob v4 的安装包
    3.进入容器中 ob 安装目录下的bin 中执行下面命令observer程序:
    LD_LIBRARY_PATH=/home/admin/oceanbase/lib: LD_PRELOAD=’’ /home/admin/oceanbase/bin/observer -i eth0 -p 2881 -P 2882 -n c1 -z z1 -d /home/admin/oceanbase/store/c1 -r ‘172.20.134.3:2882:2881’ -c 1691623887

出现 core dump 错误

4.然后重新找了个宿主机时centos执行发现正常执行

【复现路径】问题出现前后相关操作
【问题现象及影响】

【附件】

意思是说同样用 centos 容器部署,只有宿主机系统不一样,centos 宿主机上的容器部署成功了,ubuntu 宿主机失败了?

是的,尝试了多次,宿主机是 ubuntu 的失败了

coredump信息是什么?
另外有些疑问:

  1. 为啥要在ubuntu中再启动docker,然后在docker中安装observer
  2. 如果使用docker为什么不使用ob-operator? (官方建议)
  3. 为什么要手动部署?而不用obd或者其它部署工具

core dump 完整信息如下:
bash: line 1: 8369 Illegal instruction (core dumped) LD_LIBRARY_PATH=/home/admin/oceanbase/lib: LD_PRELOAD=’’ /home/admin/oceanbase/bin/observer -i eth0 -p 2881 -P 2882 -n c1 -z z1 -d /home/admin/oceanbase/store/c1 -r ‘10.20.30.40:2882:2881’ -c 1691623887

1.测试环境,不想直接在物理机上部署,用完就可以销毁
2-3.上来就使用工具虽然简单,但手动走一遍部署流程,也便于学习与深入理解,不是吗

  1. 用gdb命令看一下 coredump 文件,看看core的栈信息,包的这个错误Illegal instruction,希望可以找出来是哪个指令有问题,或者代码段被覆盖了
  2. 两个宿主机,centos7和ubuntu20的宿主机,CPU型号分别是什么?
  3. 如果方便,可以做个测试,在centos7上装一个ubuntu20的虚拟机,然后在ubuntu20的虚拟机中装centos7 docker,看看能不能跑。如果可以跑,不会是ubuntu20的兼容问题,而是某个硬件问题