Мне нужна помощь с проблемой libvirt (?).
Процессор $ grep / proc / cpuinfo | wc -l
16
$ virsh nodeinfo
setlocale: No such file or directory
CPU model: x86_64
CPU(s): 16
CPU frequency: 800 MHz
CPU socket(s): 2
Core(s) per socket: 4
Thread(s) per core: 1
NUMA cell(s): 1
Memory size: 66114200 KiB
Возможности $ virsh
..
<topology>
<cells num='4'>
<cell id='0'>
<cpus num='4'>
<cpu id='0'/>
<cpu id='1'/>
<cpu id='2'/>
<cpu id='3'/>
</cpus>
</cell>
<cell id='1'>
<cpus num='4'>
<cpu id='4'/>
<cpu id='5'/>
<cpu id='6'/>
<cpu id='7'/>
</cpus>
</cell>
<cell id='2'>
<cpus num='4'>
<cpu id='12'/>
<cpu id='13'/>
<cpu id='14'/>
<cpu id='15'/>
</cpus>
</cell>
<cell id='3'>
<cpus num='4'>
<cpu id='8'/>
<cpu id='9'/>
<cpu id='10'/>
<cpu id='11'/>
</cpus>
</cell>
</cells>
</topology>
..
$ virsh vcpupin vm 0 13,12,11,10,9,8,7,6,5
error: Physical CPU 13 doesn't exist.
error: cpulist: Invalid format.
Почему мои гости ВМ используют только первые 8 ЦП, а следующие 8 находятся в режиме ожидания?
$ за хост в virsh list | awk '{print $2}'
; сделать virsh vcpuinfo $ host; сделано | grep ^ CPU: | сортировать | uniq
CPU: 0
CPU: 1
CPU: 2
CPU: 3
CPU: 4
CPU: 5
CPU: 6
CPU: 7
Есть идеи, как это изменить?
Это быстрое решение этой проблемы:
for pid in `ps aux | grep '/usr/bin/kvm' | grep -v grep | awk '{print $2}'`; do taskset -p -c 0-15 $pid; done
Но я решил сменить операционную систему на Ubuntu, и это работает как шарм.