OpenNebula with affinity CPU support

Hello,

I’m doing some tests with my server v6.0.0.2 and CPU affinity (after installing “qemu-kvm-ev” from centos-release-qemu-ev that offers “qemu-kvm” v2.12.0-44.1 that supports CPU affinity (original qemu-kvm v1.5.3-173 from CentOS-7 doesn’t support that feature).
I have configure my host with NUMA and Pinned Pin Policy:

As you can see, my server (a virtualbox server for testing purpposes) offers three cores/CPU (although, really, server shows 200 CPUs, now, I see 3 cores, not 2… Mmmm… anyway…)

I have created a template that uses “NUMA Pinned”. When I instantiate a VM with 1 core, I could see that Core 0 is not free, but shows “VM ID_xxx”. Correct!

Then, I have create another template, but this one does not uses “NUMA” (tag “NUMA Topology” is not marked.
With this configurating, when I instantiate 2 VMs with this template requesting 0.5 CPUs, both VMs should run over Core 1 because it is the ONLY CPU/Core free and, 0.5+0.5=1, so really I’m requesting 1 CPU and my server has 1 free CPU… But instances don’t instantiate and I have got this error message:

Mon Jun 13 14:55:16 2022 [Z0][SCHED][D]: Setting VM groups placement constraints. Total time: 0.00s
Mon Jun 13 14:55:16 2022 [Z0][SCHED][D]: Host 0 discarded for VM 120. It does not fulfill SCHED_REQUIREMENTS: (CLUSTER_ID = 0) & !(PUBLIC_CLOUD = YES) & !(PIN_POLICY = PINNED) & ( ID="0" )
Mon Jun 13 14:55:16 2022 [Z0][SCHED][D]: Match-making results for VM 120:
	Cannot schedule VM, there is no suitable host.

Mon Jun 13 14:55:16 2022 [Z0][SCHED][D]: Host 0 discarded for VM 121. It does not fulfill SCHED_REQUIREMENTS: (CLUSTER_ID = 0) & !(PUBLIC_CLOUD = YES) & !(PIN_POLICY = PINNED) & ( ID="0" )
Mon Jun 13 14:55:16 2022 [Z0][SCHED][D]: Match-making results for VM 121:
	Cannot schedule VM, there is no suitable host.

Why? How could I have “mixed” templated using NUMA and no-NUMA? Is it possible?

Thanks a lot, as always :wink: !!