ocp看到的ob服务器cpu核数有误

【 使用环境 】
测试环境
【 OB or 其他组件 】
OS:Anolis OS 8.6 OpenStack实例
ocp:社区版3.3.0-20220427
ob:3.1.4
【问题描述】服务器是OpenStack实例,分配内核为8,但是ocp显示机器内核为16
【问题现象及影响】
系统命令查询内核数:

[root@oceanbase1 ~]# cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
8
[root@oceanbase1 ~]# cat /proc/cpuinfo| grep "cpu cores"| uniq
cpu cores	: 1
[root@oceanbase1 ~]# cat /proc/cpuinfo| grep "processor"| wc -l
8

ocp显示:

影响:之前内核好像分超了,ocp显示没有超,貌似集群运行除了一些问题
【附件】

你说的8核是物理核吗?

不是,OpenStack看到的内核是逻辑内核数,分给ob实例8核,在ob的服务器上看到的逻辑物理核心数都是8,但是ocp显示16

OCP这边显示的"核数"应该是拿的OB集群的cpu_count这个参数,这个参数会影响OB可使用的线程数,在3.1版本如果设置太小,会导致建租户成功但是无法连接上,并且这个参数目前是可以超卖的(也就是可以设置超过实际的物理核数),在3.1版本它的取值是max{16,物理核数-2},所以8核的场景,实际这个值是16;这个也就解释了为什么实际物理机是8核,但是OCP显示是16核的问题。

目前在3.1版本可能无法调整这个逻辑,我们在规划设计这个参数在4.x版本是否能更符合实际的物理核数

在OpenStack里看到的cpu核总量是cpu的逻辑内核数目,分给ob服务器的应该也是逻辑内核数,ob服务器看到的物理和逻辑内核数也是8;

前段时间我们在测试ob时候,程序运行一段时间总是会出错(相关帖子:1 2),调了很多参数,好像运行一段时间都会出错,之前发现了对ob租户分配的cpu核数总量超过了实际核数,目前调整到实际核数以下,貌似就可以稳定运行了

所以我怀疑是不是在高负载时cpu超量使用导致的问题,才发了这个帖子