Использование CPU overcommit 2.0 с закреплением процессора в OpenStack
В соответствии с руководствами значение overcommit ЦП должно быть 1.0, если используется сродство ЦП (закрепление ЦП). Мой вопрос: что происходит, когда оба используются? Детали следующие:
Параметры сервера (lscpu):
CPU(s): 56
On-line CPU(s) list: 0-55
Thread(s) per core: 2
Core(s) per socket: 14
Socket(s): 2
NUMA node(s): 2
numactl - оборудование
available: 2 nodes (0-1)
node 0 cpus: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 28 29 30 31 32 33 34 35 36 37 38 39 40 41
node 1 cpus: 14 15 16 17 18 19 20 21 22 23 24 25 26 27 42 43 44 45 46 47 48 49 50 51 52 53 54 55*
Итак, у меня 56 vCPU, поскольку используется гиперпоточность. Процессор overcommit установлен на 2.0 . У меня есть несколько виртуальных машин, которые используют закрепление процессора и некоторые другие, которые не используют. Интересную часть я вижу под cpuinfo.
virsh vcpuinfo
instance-0000071f:
VCPU: 2
CPU: 25
CPU time: 299.6s
CPU Affinity: -------------------------y------------------------------
instance-000006f2:
VCPU: 1
CPU: 25
CPU time: 153708.8s
CPU Affinity: --yyyyyyyyyyyy-yyyyyyyyyyyyy--yyyyyyyyyyyy-yyyyyyyyyyyyy
Итак, как вы видите, у меня есть одна виртуальная машина, которая использует только выделенный процессор № 25. У меня есть еще одна виртуальная машина, которая не использует выделенные процессоры, но в настоящее время выделенный номер процессора тоже 25. Как это возможно? Я имею в виду, что у меня 56 виртуальных ЦП после гиперпоточности, и один из них (25) выделен для VM1 из-за закрепления ЦП. В то же время загрузка процессора установлена на 2,0 . Из-за чрезмерной загрузки ЦП общее количество виртуальных ЦП равно 112.
Мой вопрос, как это может работать (выделенный процессор, выделенный для другой виртуальной машины)? Почему закрепление процессора не удаляет выделенный процессор из списка доступных процессоров? и скажите это вышеупомянутому приложению (вы не можете использовать overcommitment на этом CPU, потому что он удален из списка доступных CPU)? Выделенные ЦП гипервизора удаляются из списка, как мы видим, как в распечатке cpuinfo виртуальной машины, но ЦП, используемые ЦП, не закрепляются.
Спасибо понго