4. vSphere组件清单与依赖关系
在vSphere生命周期治理中,补丁升级失败最常见的原因并不是单个组件安装出错,而是升级顺序与版本组合越过了兼容性边界。vCenter、ESXi、vSAN、NSX、Aria Suite 之间存在明确的“版本锚点”关系:vCenter 的版本决定了它能管理的 ESXi 最高版本,ESXi 的版本决定了 vSAN 磁盘格式与功能上限,NSX 的版本又受 vCenter 与 ESXi 版本双重约束,而 Aria Suite 的采集与适配能力则依赖 vCenter API 与 ESXi 的版本区间。因此,升级前必须先建立组件清单,再依据互操作矩阵确定“先升谁、后升谁、哪些组合不允许出现”。
一、组件清单:先盘点“版本四要素”
组件清单不是简单罗列名称,而要为每个组件记录四个关键字段:组件名称与角色、当前版本与内部版本号、部署形态、依赖对象。以 vCenter 为例,当前版本可能显示为 8.0 Update 2,但互操作矩阵通常使用内部版本号(如 8.0.2.00000)进行精确匹配;ESXi 同样需要记录 Build Number,因为同一 Update 级别下不同补丁包的 Build 可能不同。vSAN 需要额外记录磁盘格式版本(如 15.0)与存储池类型;NSX 需要记录 Manager、Controller、Edge 的版本是否一致;Aria Suite 则要区分 Aria Operations、Aria Operations for Logs、Aria Automation 各自的版本与采集适配器版本。
建议在变更前生成一份组件清单表,至少包含以下字段:组件、角色、当前版本、目标版本、Build 号、依赖组件、兼容性结论、备注。清单的用途是让升级评审时能一眼看出“哪个组件的目标版本尚未被上游组件支持”。
二、依赖关系:谁约束谁
vSphere 组件之间的依赖不是单向的,而是分层约束。可以按以下顺序理解:
- vCenter 是管理平面锚点:它向下管理 ESXi,向上被 NSX Manager 与 Aria Suite 依赖。vCenter 版本必须不低于所有被管理 ESXi 的版本,否则会出现“无法管理”或功能降级。
- ESXi 是计算与存储底座:vSAN 是 ESXi 内核模块,因此 vSAN 版本随 ESXi 版本走;NSX 的传输节点(Transport Node)也部署在 ESXi 上,因此 NSX 版本必须匹配 ESXi 版本区间。
- vSAN 受 ESXi 与磁盘格式双重约束:升级 ESXi 后,vSAN 磁盘格式不会自动升级,需要单独执行磁盘格式升级;而磁盘格式升级通常是单向的,回退困难。
- NSX 受 vCenter 与 ESXi 双重约束:NSX Manager 需要与 vCenter 建立计算管理器连接,同时 NSX 的 ESXi 传输节点模块必须与 ESXi 版本兼容。
- Aria Suite 依赖 vCenter API 与 ESXi 指标接口:Aria Operations 通过 vCenter 采集集群、主机、虚拟机指标,通过 ESXi 采集硬件与性能计数器;若 vCenter 或 ESXi 版本超出适配器支持范围,会出现采集失败或指标缺失。
这些依赖关系可以用下面的互操作约束图表示。图中箭头方向表示“被依赖方 → 依赖方”,即箭头起点是约束来源,终点是受约束组件。
三、互操作矩阵的读法:不要只看“支持”,要看“组合”
VMware 官方互操作矩阵(Interoperability Matrix)以“产品 + 版本 + 组合”的方式给出支持结论。实际使用时,不能只查单个产品是否支持,而要查“vCenter 8.0 U2 + ESXi 8.0 U2 + vSAN 8.0 U2 + NSX 4.1.2 + Aria Operations 8.16”这样的组合是否被标记为支持。矩阵中常见三种状态:Supported(支持)、Supported with caveats(有条件支持)、Not supported(不支持)。有条件支持通常意味着需要额外补丁、特定配置或功能限制,例如某些 NSX 版本在特定 ESXi Build 上仅支持 VLAN 传输节点,不支持 Overlay。
一个实用的做法是:在升级窗口前,把目标组合逐项填入矩阵查询,并截图或导出结论,作为变更评审附件。对于有条件支持的组合,必须把 caveat 内容翻译成具体的检查项,例如“需先升级 NSX Manager 到 4.1.2 再升级 ESXi 传输节点”。
四、升级顺序:从锚点向外扩散
基于上述依赖关系,推荐的升级顺序是:先 vCenter,再 ESXi,然后 vSAN 磁盘格式,接着 NSX,最后 Aria Suite。这个顺序的原因是:vCenter 先升级可以保证它有能力管理更高版本的 ESXi;ESXi 升级后再升级 vSAN 磁盘格式,避免格式升级过程中管理平面不可用;NSX 在 ESXi 升级后升级,确保传输节点模块与 ESXi Build 匹配;Aria Suite 最后升级,因为它的适配器需要同时兼容新 vCenter 和新 ESXi。
但顺序不是绝对的。如果 NSX 当前版本不支持目标 ESXi Build,则必须先升级 NSX Manager 到支持该 Build 的版本,再升级 ESXi。此时顺序变为“vCenter → NSX Manager → ESXi → NSX 传输节点 → vSAN → Aria”。因此,升级顺序应由互操作矩阵的约束方向决定,而不是固定模板。
五、实操示例:一次跨版本升级的清单与判断
假设当前环境为:vCenter 7.0 U3、ESXi 7.0 U3、vSAN 7.0 U3 磁盘格式 12.0、NSX 3.2.2、Aria Operations 8.10。目标是将 ESXi 升级到 8.0 U2,并保留 vSAN 与 NSX 功能。按以下步骤执行:
- 查询互操作矩阵,确认 vCenter 8.0 U2 支持管理 ESXi 8.0 U2,且 NSX 4.1.2 支持 ESXi 8.0 U2。
- 确认 Aria Operations 8.16 支持 vCenter 8.0 U2 与 ESXi 8.0 U2 的采集适配。
- 先升级 vCenter 到 8.0 U2,验证管理平面正常。
- 升级 NSX Manager 到 4.1.2,再升级 ESXi 传输节点到 8.0 U2。
- 升级 ESXi 主机到 8.0 U2,逐台进入维护模式,确认 vSAN 数据健康。
- 执行 vSAN 磁盘格式从 12.0 升级到 15.0,观察磁盘组重建进度。
- 最后升级 Aria Operations 到 8.16,检查采集状态与指标完整性。
判断升级是否成功的依据包括:vCenter 能正常管理所有 ESXi 主机;vSAN 集群健康状态为绿色,磁盘格式显示为目标版本;NSX 传输节点状态为“成功”,Overlay 网络连通性正常;Aria Operations 中所有适配器状态为“正常”,无数据采集缺口。
六、清单模板与检查要点
以下是一份可直接使用的组件清单与兼容性检查表,字段可根据实际环境增减。建议在每次升级前填写并归档。
| 组件 | 当前版本/Build | 目标版本/Build | 依赖对象 | 矩阵结论 | 升级顺序 |
|---|---|---|---|---|---|
| vCenter Server | 7.0 U3 / 20150588 | 8.0 U2 / 22617221 | — | Supported | 1 |
| ESXi | 7.0 U3 / 20036589 | 8.0 U2 / 22380479 | vCenter ≥ 8.0 U2 | Supported | 3 |
| vSAN 磁盘格式 | 12.0 | 15.0 | ESXi ≥ 8.0 U2 | Supported | 4 |
| NSX Manager | 3.2.2 | 4.1.2 | vCenter ≥ 8.0 U2 | Supported with caveats | 2 |
| NSX 传输节点 | 3.2.2 | 4.1.2 | ESXi ≥ 8.0 U2 | Supported | 3.5 |
| Aria Operations | 8.10 | 8.16 | vCenter ≥ 8.0 U2, ESXi ≥ 8.0 U2 | Supported | 5 |
检查要点:第一,所有组件的目标版本必须在同一互操作矩阵查询结果中同时出现;第二,有条件支持的组合必须逐条落实 caveat;第三,升级顺序必须满足“约束来源先升级”的原则;第四,vSAN 磁盘格式与 NSX 传输节点升级必须安排在 ESXi 升级之后;第五,Aria Suite 升级后必须验证采集适配器状态与指标完整性。只有清单、矩阵、顺序、验证四者一致,升级才具备可执行性。