Central-Processing-Unit

在 XenServer 上為 VM 分配 vCPU

  • June 20, 2011

我最近將一台 HP 伺服器從一個使用過的 CPU 插槽(4 核 + HT = 8 核)升級到了 2 個使用過的 CPU 插槽(16 核)。

但是,我只能為 VM 分配 8 個核心。當設置為 16 時,它在“新 VM 嚮導”中預設恢復為 8,當從現有 VM 更改它時,它會顯示紅色警告:“VCPU 多於物理 CPU 可能會導致 VM 性能降低”。點擊確定仍將其預設為 8 個核心而不是 16 個。

在此處輸入圖像描述

但是,我的 xenhost (dom0) 確實分配了 16 個 CPU,並且實際上可以辨識它們。

在此處輸入圖像描述

我想知道為什麼我無法在一台機器上添加超過 8 個 vCPU。

在進行伺服器升級之前,我也能夠分配 8 個 vCPU,因此它不能與 HT 相關。

XenServer 在來賓中支持超過 8 個虛擬 CPU,但 XenCenter GUI 界面強制限制為 8。如果要為來賓使用超過 8 個 VCPU,則必須通過“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 個的秘密,我不得不警告你可能不想這樣做。更多的 vCPU 不會自動等同於更高的性能,尤其是在此 XenServer 實例上執行多個 VM 時。還要意識到一個 HT CPU 不等於一個完整的額外 CPU。

關於我能想到的唯一一種情況,您希望將所有物理 CPU 交給單個來賓,如果您正在對已證明能夠很好地擴展到您嘗試使用的 CPU 數量。否則,您只會在管理程序中造成額外的 CPU 調度成本。

引用自:https://serverfault.com/questions/268668