3. 资源池层级与组织设计
资源池层级设计的目标,是让 vSphere 的 DRS、HA、份额、预留、限额和权限都能沿着一条清晰的树形结构自然继承,同时让运维人员能在 3 秒内定位到某个虚拟机属于哪个业务、哪个等级、哪个环境。层级过浅会导致策略无法区分,层级过深则会让继承关系难以推理、权限难以审计。本节围绕“业务单元—应用等级—环境阶段”这条主线,说明如何设计资源池树、控制深度,并规划根资源池与子资源池的命名、权限和继承关系。
一、资源池树的三条组织维度
在 vCenter 中,资源池是集群之下、虚拟机之上的逻辑容器。它不改变物理 CPU 和内存的归属,但决定了 DRS 在竞争时如何分配资源,以及 HA 在故障时如何重启虚拟机。因此,资源池树本质上是一棵“策略继承树”。
常见的组织维度有三种:
- 业务单元维度:按部门或产品线划分,如“电商”“支付”“风控”。它对应成本归属和权限边界,通常与 AD 安全组一一对应。
- 应用等级维度:按 SLA 划分,如“核心”“重要”“一般”。它对应预留、份额和 HA 重启优先级,是资源保障的主要依据。
- 环境阶段维度:按“生产 / 预生产 / 测试 / 开发”划分。它对应不同的超分比、快照策略和维护窗口。
三种维度不能同时作为顶层。推荐的做法是:顶层用业务单元,第二层用应用等级,第三层用环境阶段。这样,权限可以按业务单元授予,资源保障可以按应用等级设置,而环境阶段则决定超分和运维策略。对于规模较小的环境,可以省略业务单元层,直接用“应用等级—环境阶段”两层。
二、层级深度控制:三层为限,四层为界
vSphere 对资源池嵌套深度没有硬性限制,但每增加一层,继承链就多一次解释成本。实践中建议:从集群根资源池到虚拟机所在资源池,路径不超过 3 层;超过 4 层时,必须能说清每一层存在的理由。
过深层级的典型症状是:某个虚拟机的“有效份额”需要逐层相乘才能算出,排障时无法快速判断它到底受哪一层限制;权限继承出现“某层拒绝、下层允许”的冲突;DRS 在资源紧张时无法给出可解释的迁移建议。如果确实需要第四层,通常是因为同一业务单元下存在多个独立成本中心,此时应优先考虑用标签和报表解决,而不是继续加深资源池。
三、命名规范:让路径本身可读
资源池名称会出现在 DRS 建议、HA 重启报告、权限审计和容量报表中。命名混乱会直接导致排障效率下降。推荐格式为:
RP-<业务单元>-<应用等级>-<环境阶段>
示例:
RP-BU-EC-CORE-PROD
RP-BU-PAY-IMP-PRE
RP-BU-RSK-GEN-TEST
其中业务单元用 2~4 个字母缩写,应用等级用 CORE / IMP / GEN,环境阶段用 PROD / PRE / TEST / DEV。全大写、连字符分隔、不使用中文和空格。这样,从资源池名称就能直接读出它的归属和策略等级,无需再点开属性查看。
四、权限与继承关系
vSphere 权限模型是“允许叠加、拒绝优先”。在资源池树上,权限从根向下继承,子资源池可以追加权限,但不能覆盖父级的“拒绝”条目。因此,设计权限时应遵循两条原则:
- 权限授予在业务单元层,不在环境层。例如“电商运维组”在 BU-EC 上授予“虚拟机操作员”角色,其下所有等级和环境自动继承。若在 PROD 单独授予,则 TEST 环境需要重复配置,容易遗漏。
- 敏感操作在根资源池集中控制。例如“删除资源池”“修改集群设置”只授予平台管理员,不下放到业务单元层。
一个常见的权限分配示例如下:
| 资源池层级 | 角色 | 授予对象 | 说明 |
|---|---|---|---|
| RP-Root | 管理员 | 平台组 | 可修改集群、资源池结构 |
| BU-EC | 虚拟机操作员 | 电商运维组 | 可开关机、快照、迁移 |
| BU-EC / CORE | 只读 | 电商值班组 | 仅查看,不可操作 |
| BU-EC / CORE / PROD | 无额外授权 | — | 继承上层权限,不单独配置 |
五、根资源池与子资源池的规划要点
根资源池 RP-Root 是集群下唯一的顶层容器,它的预留和限额应保持默认(预留 0、无上限),避免对全集群造成隐性约束。根资源池的主要作用是:承载全局权限、作为 DRS 的默认比较基准、以及为容量报表提供汇总节点。
子资源池的规划应遵循“同级同质”原则:同一父池下的子池,其预留之和不应超过父池的可用资源。例如,BU-EC 下 CORE 预留 50%、IMP 预留 20%、GEN 预留 0,合计 70%,留出 30% 作为突发余量。如果合计超过 100%,DRS 会在资源紧张时无法满足预留,导致虚拟机无法开机或迁移失败。
六、一个可落地的三层结构示例
假设某企业有 3 个业务单元、每个业务单元有 3 个应用等级、每个等级有 2 个环境,则资源池总数为 3 × 3 × 2 = 18 个,加上根资源池共 19 个。这个规模在 vCenter 中完全可控,且路径深度为 3 层,符合“三层为限”的原则。
如果业务单元增加到 10 个,资源池总数会达到 60 个以上。此时应评估是否将部分业务单元合并,或改用“标签 + 报表”替代第四层资源池。资源池树的价值在于策略继承和权限边界,而不是无限细分。当细分带来的管理成本超过其收益时,就应该停止加深层级。
最后,资源池树不是一次性设计后就固定不变的。随着业务调整,应定期审查:是否有空资源池可以合并、是否有预留之和超过父池的情况、是否有权限在环境层重复配置。建议每季度做一次资源池结构审计,确保树形结构与实际业务归属保持一致。