X86 win11 平台 qemu 虚拟机启 银河麒麟 v10 sp2 安装报错

【 使用环境 】测试环境
【 OB or 其他组件 】
【 使用版本 】OceanBase 4.2.1.8
【问题描述】本人是X86 Win11平台,处理器 Intel(R) Core™ i9-14900HX。使用QEMU软件,安装了银河麒麟V10 SP2虚拟机。然后在此虚拟机上,进行OceanBase 4.2.1.8社区版,快速体验安装。安装步骤完全按照快速体验的3个简单命令进行执行。
遇到报错:
[2024-10-22 06:14:44.425] [DEBUG] – local execute: cd /root/oceanbase-ce; /root/oceanbase-ce/bin/observer -r ‘127.0.0.1:2882:2881’ -p 2881 -P 2882 -z ‘zone1’ -n ‘demo’ -c 1729548878 -d ‘/root/oceanbase-ce/store’ -I ‘127.0.0.1’ -o __min_full_resource_pool_memory=1073741824,enable_syslog_recycle=True,enable_syslog_wf=False,max_syslog_file_count=4,memory_limit=‘6144M’,system_memory=‘1024M’,cpu_count=16,datafile_size=‘2048M’,datafile_maxsize=‘8192M’,datafile_next=‘2048M’,log_disk_size=‘14336M’
[2024-10-22 06:14:45.188] [DEBUG] – exited code 132, error output:
[2024-10-22 06:14:45.189] [DEBUG] /bin/sh:行 1: 21040 非法指令 (核心已转储)/root/oceanbase-ce/bin/observer -r ‘127.0.0.1:2882:2881’ -p 2881 -P 2882 -z ‘zone1’ -n ‘demo’ -c 1729548878 -d ‘/root/oceanbase-ce/store’ -I ‘127.0.0.1’ -o __min_full_resource_pool_memory=1073741824,enable_syslog_recycle=True,enable_syslog_wf=False,max_syslog_file_count=4,memory_limit=‘6144M’,system_memory=‘1024M’,cpu_count=16,datafile_size=‘2048M’,datafile_maxsize=‘8192M’,datafile_next=‘2048M’,log_disk_size=‘14336M’
[2024-10-22 06:14:45.190] [DEBUG]
[2024-10-22 06:14:45.193] [DEBUG] – root@127.0.0.1 delete env LD_LIBRARY_PATH
[2024-10-22 06:14:45.225] [ERROR] OBD-2002: Failed to start 127.0.0.1 observer: /bin/sh:行 1: 21040 非法指令
(核心已转储)/root/oceanbase-ce/bin/observer -r ‘127.0.0.1:2882:2881’ -p 2881 -P 2882 -z ‘zone1’ -n ‘demo’ -c 1729548878 -d ‘/root/oceanbase-ce/store’ -I ‘127.0.0.1’ -o __min_full_resource_pool_memory=1073741824,enable_syslog_recycle=True,enable_syslog_wf=False,max_syslog_file_count=4,memory_limit=‘6144M’,system_memory=‘1024M’,cpu_count=16,datafile_size=‘2048M’,datafile_maxsize=‘8192M’,datafile_next=‘2048M’,log_disk_size=‘14336M’
[2024-10-22 06:14:45.225] [ERROR]
[2024-10-22 06:14:45.227] [DEBUG] - sub start ref count to 0

根据论坛搜索OBD-2002报错,对系统内核安全参数( fs.aio-max-nr , open files , max user processes , core file size , stack size)皆进行了修改。不起作用。

然后看见了:
OB高版本不支持CPU是ARM V8.0的指令集。
建议:更换高版本cpu进行部署。

【复现路径】问题出现前后相关操作
【附件及日志】

2 个赞

你把这两个参数调整一下 调大点再试一下

1 个赞

具体如何调?文件位置?

解决方法复制粘贴,连字都不带改的是吗?

你是用obd黑屏部署的 例如:
obd cluster deploy test -c all-components-min.yaml
打开这个yaml文件就可以调整了

1 个赞

因为碰到这样的问题 都是把这个问题排查掉 才能进行下一步的操作


obd cluster deploy test -c all-components-min.yaml 执行结果如图

1 个赞


obd demo --prometheus.port=9091 报这个错

1 个赞


obd demo -c oceanbase-ce报这个,每次报错位置还不一样的

1 个赞

你用这个命令试一下 注意粘贴出去 看看有没有转义
obd demo --oceanbase-ce.mysql_port=4881 --oceanbase-ce.rpc_port=4882 --oceanbase-ce.obshell_port=4886 --oceanbase-ce.datafile_size=40G --oceanbase-ce.log_disk_size=32G --oceanbase-ce.memory_limit=8G cpu_count=5 --oceanbase-ce.version=4.2.1.8 --obproxy-ce.version=4.2.1.8 -c oceanbase-ce

1 个赞

应该是cpu不支持,缺失指令集


拼了老命,总算把memory_limit改了,启动还是报错,然后demo start不起不来也destory不了了,所以,你上面带参数的命令,我执行不了了,我得重新用qemu装个虚拟机

还是指令不存在,返回code132

总算看见个不是照本宣科的。有没什么解法?我看帖子,说是升级导致,旧4.2.1.2前还好好的。有没旧版本的提供下?ce能翻到旧版本的下载链接,但是allinone没有旧版本的。如何把旧的ce换到新的allinone中去安装?或者单独安装没问题的ce?我只做个开发测试,没必要和新版死磕

老锅,能快速钉钉沟通下不?我真急

在不断翻手册和社区大佬们的支援下解决了。
原因系4.3.3版本oceanbase-ce不兼容amd架构,指定4.2.1.1版本oceanbase-ce即可

1)开启所有远程仓库,以部署时下载4.2.1.1版本oceanbase-ce:
obd mirror enable remote
2)部署配置文件中指定oceanbase-ce的版本
#以样例中的mini-local-example.yaml为部署的配置文件模板
cp /usr/obd/example/mini-local-example.yaml ~/mini-local-example.yaml

#指定oceanbase-ce的版本,这样部署的时候,将会从远程下载
vi ~/mini-local-example.yaml #然后在oceanbase-ce下添加version: 4.2.1.1

#用指定的配置文件部署机器
obd cluster deploy 集群名 -c ~/mini-local-example.yaml
obd cluster start 集群名

集群起来后,后续遇上问题

1.链接报错
obclient -h127.0.0.1 -P2883 -uroot@sys#obtest -p -c -A

2.以为是密码过于复杂,所以使用
obd cluster edit-config obtest
直接修改配置文件密码,导致报错

3.reload集群后,就再也起不来了

麻烦提个新帖