2. vSphere集群架构与资源模型
在vSphere中,HA与DRS并不是独立存在的功能,它们建立在vSphere集群的对象模型之上。理解ESXi主机、集群、资源池和虚拟机之间的层级关系,以及CPU与内存如何被抽象和分配,是后续配置HA、DRS、准入控制和资源池策略的基础。本节从对象关系入手,逐步展开资源抽象模型,最后说明启用集群功能的前提条件。
一、vSphere对象层级关系
vSphere的清单对象呈树状结构。最顶层是vCenter Server,其下可以创建多个数据中心(Datacenter)。数据中心内部包含计算资源、网络、存储和虚拟机等文件夹。计算资源文件夹中放置集群(Cluster)或独立ESXi主机。集群是一组ESXi主机的逻辑集合,主机加入集群后,其CPU和内存资源被汇总为集群资源池。资源池(Resource Pool)是集群内部对CPU和内存进行再划分的容器,可以嵌套,形成层级结构。虚拟机(VM)最终运行在某个ESXi主机上,但从资源调度角度看,它属于某个资源池或集群根资源池。
对象关系可以概括为:vCenter → 数据中心 → 集群 → ESXi主机 → 虚拟机;资源池则穿插在集群与虚拟机之间,形成资源分配路径。HA关注的是主机故障时虚拟机能否在其他主机上重启,DRS关注的是虚拟机在主机之间的迁移与资源均衡。两者都作用于集群层级,而不是单台主机。
二、CPU与内存资源抽象
ESXi主机将物理CPU核心抽象为逻辑处理器(Logical CPU),每个核心通常呈现为两个逻辑处理器(超线程开启时)。集群的CPU资源总量等于所有主机逻辑处理器主频之和,单位为GHz或MHz。例如三台主机各32核、主频2.4GHz,开启超线程后每台64个逻辑处理器,单台CPU资源约153.6GHz,集群总量约460.8GHz。这是示例计算,实际以物理主频和超线程状态为准。
内存资源抽象相对直接:主机物理内存扣除VMkernel开销后,可供虚拟机使用的部分构成集群内存总量。三台256GB主机,VMkernel预留约8GB/台,可用内存约744GB。CPU和内存的分配通过预留(Reservation)、限制(Limit)和份额(Shares)三个参数控制。预留是保证下限,限制是使用上限,份额决定资源竞争时的相对优先级。资源池可以嵌套,子资源池从父资源池中划分资源,形成树状分配结构。
需要区分“已配置”与“已使用”。虚拟机配置的CPU和内存是上限,实际使用量随负载变化。HA准入控制基于预留和配置内存判断故障切换容量,DRS则根据实际使用率和份额进行迁移决策。理解这一区别,才能正确设置资源池参数。
三、集群启用前提条件
启用vSphere HA和DRS需要满足以下条件:
- vCenter Server可用:集群由vCenter管理,HA和DRS的配置与监控依赖vCenter。vCenter本身故障不影响已启用HA的集群继续运行,但无法修改配置。
- 至少两台ESXi主机:HA需要故障切换目标,单主机集群无法实现主机级冗余。DRS至少需要两台主机才能进行迁移和均衡。
- 共享存储:HA故障切换时,虚拟机需要在其他主机上访问相同的虚拟磁盘。FC、iSCSI、NFS或vSAN均可,但必须对所有集群主机可见。
- 网络连通性:主机之间需要管理网络互通,用于HA心跳和DRS通信。建议配置冗余管理网络,避免单点故障。
- 主机版本与许可:所有主机应运行兼容的ESXi版本,并具备vSphere HA和DRS所需的许可级别。混合版本可能导致功能受限。
- DNS与时间同步:主机名解析和NTP时间同步是集群稳定运行的基础,时间偏差过大会影响证书和日志关联。
- 集群内主机状态正常:主机应处于已连接状态,无严重告警,且未处于维护模式。
四、对象关系对HA/DRS的影响
资源池的层级结构直接影响DRS的迁移决策。如果资源池设置了较高的预留,DRS在均衡时会优先满足预留约束。HA的准入控制策略也基于资源池的预留和主机资源计算故障切换容量。例如“集群资源百分比”策略要求预留一定比例的CPU和内存用于故障切换,这个比例基于集群总量而非单个资源池。因此,资源池划分过细或预留过高,可能导致HA准入控制失败,集群显示“不足”告警。
虚拟机与资源池的关系决定了它的资源归属。虚拟机可以放在集群根资源池,也可以放在自定义资源池中。HA重启虚拟机时,会将其放回原资源池;如果原资源池所在主机故障,HA会在其他主机上重建资源池路径。DRS迁移虚拟机时,资源池归属不变,仅改变运行主机。理解这一点,有助于排查迁移后资源分配异常的问题。
总结来说,vSphere集群的对象模型是HA和DRS的骨架:集群定义作用域,主机提供物理资源,资源池划分逻辑资源,虚拟机消费资源。CPU和内存通过预留、限制、份额进行抽象和控制。启用集群功能前,必须确保vCenter、主机、共享存储、网络和许可等前提条件就绪。只有在这个模型上,HA的故障切换和DRS的动态均衡才能正确工作。