份额、预留与限额
vSphere 用三个杠杆控制虚机之间的资源分配:份额(shares)决定资源争抢时的相对权重,预留(reservation)保证达到最低可用量,限额(limit)封住使用上限。三者分层生效——先把预留锁定出来,再由限额封顶,剩下的资源在争抢阶段才按份额比例分配。
基本信息
| 份额 | 相对权重,仅在同层资源竞争时生效 |
|---|---|
| 预留 | 资源紧张时仍保证的可用量,过高会降低整合密度 |
| 限额 | 使用量上限,可用于防止单机挤占 |
| 位置 | 虚机设置 → CPU / 内存 → 资源分配 |
| 计算口径 | CPU 按 MHz、内存按 MB,界面同时给出对应百分比 |
| 联动关系 | 与准入控制、DRS 共同决定集群实际能承载多少虚机 |
典型使用场景
- 关键业务设预留,避免被同宿主上的邻居挤占
- 测试与批处理虚机设限额,限制其资源占用
- 排查 CPU 就绪时间偏高的虚机时核对份额与预留
- 评估集群整合密度时统计预留总量是否超出宿主能力
- 变更资源分配前做影响评估,避免牵连其他虚机
PowerCLI 查看当前配置
PowerCLI 查看当前配置
Get-VMResourceConfiguration -VM 'vm1' | Select-Object CpuSharesLevel,MemSharesLevel,CpuReservationMhz,MemReservationMB
Get-VMResourceConfiguration -VM 'vm1' | Format-List * # 看完整字段,含限额
Get-VM | Select-Object Name,NumCpu,MemoryGB | Sort-Object MemoryGB -Descending # 找大规格虚机
Get-Cluster 'C1' | Get-VMHost | Select-Object Name,CpuTotalMhz,MemoryTotalGB # 宿主能力三个杠杆的差别
| 概念 | 作用 | 常见误用 |
|---|---|---|
| 份额 | 资源争抢时的相对权重 | 设了份额就以为性能有保证 |
| 预留 | 保证资源紧张时的可用量 | 预留开满导致整合密度极低 |
| 限额 | 限制虚机的使用上限 | 限额设得过低,业务高峰被硬压 |
为关键虚机设预留、为测试虚机设限额是常见组合,但预留总量不得超过宿主可用资源,否则后续开机与故障切换都会失败。
份额与预留只在资源竞争时才体现差异:宿主资源富余时设不设都一样,别把“设了预留”当成性能优化手段,它更像是资源紧张时的优先级排序。