Выделение виртуальных ЦП виртуальной машине на XenServer
Недавно я обновил сервер HP с одного используемого сокета процессора (4 ядра + HT = 8 ядер) до двух используемых сокетов процессора (16 ядер).
Тем не менее, я могу назначить только 8 ядер на виртуальную машину. При настройке 16 он по умолчанию возвращается к 8 в "мастере создания новой виртуальной машины", а при изменении его с существующей виртуальной машины он отображает красное предупреждение: "Больше виртуальных процессоров, чем физических процессоров, может привести к снижению производительности виртуальной машины". Нажав кнопку ОК, по умолчанию используется 8 ядер вместо 16.
Однако мой xenhost (dom0) имеет 16 выделенных процессоров и фактически распознает их.
Мне интересно, почему я не могу добавить более 8 виртуальных ЦП к машине.
До обновления сервера я также мог выделить 8 виртуальных ЦП, поэтому он не может быть связан с HT.
1 ответ
XenServer поддерживает более 8 виртуальных процессоров в гостевой системе, но интерфейс графического интерфейса XenCenter налагает жесткое ограничение в 8. Если вы хотите использовать более 8 виртуальных ЦП для гостевой системы, вы должны сделать это с помощью командной строки 'xe':
xe vm-param-set uuid=your_vms_uuid VCPUs-at-startup=16
xe vm-param-set uuid=your_vms_uuid VCPUs-max=16
Чтобы найти 'your_vms_uuid', вы можете использовать:
xe vm-list name-label=VMname
Где "VMname" - это удобочитаемое имя, назначенное вами в XenCenter.
Теперь, дав вам секрет распределения более 8, я должен предупредить, что вы, вероятно, не хотите этого делать. Большее количество виртуальных ЦП автоматически не увеличивает производительность, особенно если на этом экземпляре XenServer запущено несколько виртуальных машин. Также осознайте, что HT-процессор не равен полному дополнительному CPU.
О единственном сценарии, который я могу придумать, когда вы захотите передать все свои физические процессоры одному гостю, будет, если вы делаете виртуализацию 1:1 приложения, которое доказало свою способность хорошо масштабироваться до количество процессоров, которые вы пытаетесь использовать. В противном случае вы просто вызываете дополнительную нагрузку на планирование ЦП в гипервизоре.