假设有一个基于 8 核心 16 线程物理 cpu 为基础的硬件平台,安装了 proxmox ve (以下简称 pve ),请问该平台最大可以创建的虚拟机 vcpu 个数有限制吗?单虚拟机的最大 vcpu 是不是不能超过线程数?
![]() |
1
MrGba2z 2024-03-24 22:33:56 +08:00
是 ( PVE 会阻止你启动,因为这样反而降低性能)
|
![]() |
3
Rorysky 2024-03-24 22:59:56 +08:00
vmware 可以超过线程数, 我隐约记得,vcpu 本身也是分时复用的
https://forum.huawei.com/enterprise/zh/thread/580934109621010432 |
4
deorth 2024-03-24 23:08:21 +08:00 via Android
没听说过
|
5
CodeWind OP @Rorysky 之前运维过 HCS ,知道 3:1 ,我记得这个 3:1 似乎是指的线程数 x3 ?大佬是想告诉我最佳方案是 3:1 的超分比吗?
|
![]() |
6
Rorysky 2024-03-25 13:30:03 +08:00
@CodeWind #5 vcpu 是分时复用的,单个虚拟机的 vcpu 数量 不能超过物理核心数(包含超线程);但你可以运行多个虚拟机,总体平台上的 vcpu 个数是由 虚拟化平台 和 硬件限制的,比如 单个物理核心只能分配 xx 个 vcpu/ 这台物理机上的 vcpu 总量限制等。 总体 vmware 说 1:3 是个经验推荐值,不一定准
https://docs.vmware.com/en/VMware-vSphere/7.0/com.vmware.vsphere.vm_admin.doc/GUID-13AD347E-3B77-4A67-B3F4-4AC2230E4509.html |
![]() |
7
Rorysky 2024-03-25 13:30:10 +08:00
|
![]() |
8
xixiv5 2024-03-28 04:40:04 +08:00
单台虚拟机最大只可以分配 16 个 vcpu
但是你可以创建 10 个甚至更多个虚拟机,每台都分配 16 个 vcpu 只不过可能会出现抢占导致卡顿 |
![]() |
9
MiKing233 6 天前
#8 的回復是正確的我補充一些, 單臺 VM 的 vCPU 最大不超過宿主機的 CPU 綫程, 但是你可以為多臺 VM 分配和宿主機綫程一樣數量的 vCPU, 但此時當兩臺 VM 的 CPU 都滿載時, 每臺就只有 50%的性能了, 你可以編輯兩臺 VM 的硬體中 CPU 的選項, 有一個"CPU 權重", 例如一臺設定 80, 一臺設定 20, 這樣當滿載后一臺性能為 80%另一臺為 20%, 這個設定只有當宿主機 CPU 滿載后才會觸發, 單是設定 CPU 資源充足下性能不會有差別, 另外如果想為單臺 VM 分配超過宿主機綫程數的 vCPU 也是可以的, 手動執行下面的命令后重啓, 不過這樣不會帶來任何性能提升, 反而我能明顯感知到性能變得更加糟糕, 并且會讓宿主機 CPU 資源持續滿載, 個人實在看不出有什麽意義
Shell #sed -i '3815s/^/#/' /usr/share/perl5/PVE/QemuServer.pm |