1. 课程导入与资源池治理全景
在虚拟化数据中心里,物理资源是有限的,而业务需求是持续变化的。vSphere 计算资源池规划与容量治理要解决的核心问题,就是让有限的 CPU、内存、存储 I/O 与网络资源,在多个业务系统之间被可控、可解释、可追溯地分配与回收。它不是一次性的“调参”动作,而是一套从业务需求出发、经过资源建模、策略配置、运行监控到持续治理的闭环方法。
先明确边界:本课程讨论的是计算资源层面的规划与治理,主要对象是 ESXi 主机、集群(Cluster)、资源池(Resource Pool)与虚拟机(VM)。存储容量规划、网络拓扑设计只在影响计算资源调度时被提及,不作为主线。治理的目标可以概括为三句话:关键业务拿到它需要的资源下限,普通业务在空闲时能弹性借用,整体集群不因个别虚机失控而雪崩。
关键术语:先建立统一语言
资源池治理的所有讨论都建立在几个基础概念之上,理解它们的语义差别,比记住配置位置更重要。
- 集群(Cluster):一组 ESXi 主机的逻辑聚合,是 DRS、HA、EVC 等能力的载体。集群是资源调度的最大边界,资源池只能建在集群内部。
- 资源池(Resource Pool):集群内对 CPU 与内存进行分层划分的容器,可以嵌套形成树状结构。虚机必须归属于某个资源池(根资源池也是资源池)。
- 份额(Shares):在资源竞争时决定分配比例的相对权重,分低/中/高三档,也可自定义数值。份额只在资源争用时生效,空闲时不限制使用。
- 预留(Reservation):为资源池或虚机保证的最低资源量,单位 MHz 或 MB。预留是“保底”,一旦设定,集群必须始终能提供这部分资源。
- 限制(Limit):资源池或虚机可使用的最高资源量。限制是“天花板”,用于防止个别虚机过度占用。
- 可扩展预留(Expandable Reservation):允许资源池在自身预留不足时,向上级资源池借用预留额度,从而让虚机开机时能获得所需保底资源。
- 准入控制(Admission Control):HA 或资源池在接纳新虚机、执行开机或迁移前,判断集群剩余资源是否满足预留要求的机制。它决定了“能不能放进来”。
从业务需求到资源池落地的工作流
资源池治理不是从 vCenter 界面开始的,而是从业务分级开始的。一个可落地的工作流通常包含六个阶段,下图展示了从业务输入到持续治理的整体链路与关键判断点。
这张图里最容易被忽略的是那条橙色虚线反馈回路。很多团队把资源池“配完就忘”,直到业务投诉才回头查。真正有效的治理,是把监控数据定期回灌到业务分级和资源画像中,形成滚动修正。
一个教学示例:三档资源池的初始参数
假设某集群有 4 台 ESXi 主机,每台 2 路 16 核 CPU(约 2.4 GHz/核,单台约 76800 MHz 可分配)、512 GB 内存。启用 HA,要求容忍 1 台主机故障,则可用资源约为 3 台主机。按业务分级设计三个资源池,示例参数如下(以下为教学假设值,非实测结果):
| 资源池 | 业务类型 | CPU 份额 | 内存份额 | CPU 预留 | 内存预留 | 限制 |
|---|---|---|---|---|---|---|
| RP-Core | 核心交易 | 高(8000) | 高(8000) | 24000 MHz | 160 GB | 不设 |
| RP-Important | 重要支撑 | 中(4000) | 中(4000) | 12000 MHz | 80 GB | 不设 |
| RP-General | 一般业务 | 低(2000) | 低(2000) | 0 | 0 | CPU 40000 MHz |
这里的设计逻辑是:核心池用高份额保证竞争优先,用预留锁定保底资源;一般池不设预留、只设限制,避免它无节制地吃掉空闲资源后影响核心业务在高峰期的表现。三个池的预留总和为 36000 MHz CPU、240 GB 内存,均低于 3 台主机的可分配量,准入控制可以通过。
治理全景的三个层次
把上面的工作流压缩一下,资源池治理可以看成三个层次:规划层决定集群规模、主机规格和 HA 冗余;策略层决定资源池树、份额、预留、限制与准入控制;运行层通过监控指标发现争用、回收闲置、触发扩容。三层缺一不可:只做规划不做策略,资源分配靠“抢”;只做策略不做监控,策略会随业务变化而失效;只做监控不做规划,永远在救火。
接下来的章节会沿着这条主线逐层展开:先讲清楚集群与资源池的层级模型和计算逻辑,再进入份额、预留、限制的具体配置与验证方法,然后讨论准入控制与 HA 的配合,最后落到容量监控、回收与扩容的治理实践。本节需要记住的,是这套体系的目标、边界和统一术语,以及“业务分级 → 资源画像 → 集群建模 → 资源池设计 → 运行监控 → 持续治理”这条闭环主线。