3. GPU计算集群总体架构设计

GPU计算集群的总体架构设计,本质上是在回答一个问题:当几十台到上千台服务器被组织在一起时,谁负责算、谁负责管、谁负责进、谁负责存、谁负责连。这五类角色分别对应计算节点、管理节点、登录节点、存储节点和高速网络,它们不是简单的设备堆叠,而是通过分层与接口约定形成的一个可扩展系统。本节从分层逻辑出发,给出各子系统的职责边界、接口定义,并绘制一张可直接用于方案评审的逻辑拓扑图。

一、五类节点的职责分层

集群按功能可划分为三层:计算层由计算节点构成,承担GPU训练与推理任务,是算力的唯一来源;服务层由管理节点、登录节点和存储节点构成,分别负责集群控制、用户接入与数据持久化;网络层由高速计算网络与管理网络构成,前者承载GPU间通信,后者承载控制与运维流量。三层之间通过明确的接口交互,避免职责交叉。

计算节点是集群的主体。以一台典型8卡GPU节点为例,配置2颗CPU、8块GPU、1.5~2TB内存、2块NVMe系统盘,并配置至少1块高速网卡(如NDR 400G InfiniBand或RoCEv2 200G/400G)。节点内部GPU通过NVLink/NVSwitch互联,节点之间通过高速网络互联。计算节点不直接暴露给用户,用户不能SSH登录计算节点,只能通过作业调度系统间接使用。

管理节点承担集群的“大脑”职能,通常部署为高可用双机。它运行作业调度器(Slurm Controller)、配置管理(如xCAT、Ansible)、监控告警(Prometheus + Grafana)、镜像与部署服务(Warewulf、OpenCHAMI)以及身份认证(LDAP/FreeIPA)。管理节点不参与计算,其网络接口只需接入管理网络,但要求低延迟、高可靠。

登录节点是用户进入集群的唯一入口,运行SSH服务、作业提交客户端、编译环境和数据传输工具。登录节点通常配置与计算节点相近的CPU与内存,但不配GPU,避免用户直接在登录节点跑训练。登录节点同时接入管理网络和存储网络,以便访问共享文件系统。

存储节点提供并行文件系统(如Lustre、GPFS、WEKA)或高性能NAS。典型配置为元数据服务器(MDS)与对象存储服务器(OSS)分离,OSS节点通过高速网络向计算节点提供带宽。存储节点需接入高速网络与存储专用网络,容量与带宽按“每GPU配比”估算,例如每块GPU配5~10TB可用容量、0.5~1GB/s带宽。

二、高速网络的分层设计

高速网络是GPU集群与普通CPU集群最大的区别。设计上通常采用两层Fat-Tree或Rail-Optimized拓扑。以Rail-Optimized为例:每台计算节点的第i块GPU网卡连接到第i台Leaf交换机,同一Rail内的GPU属于同一通信域,All-Reduce等集合通信可在Rail内高效完成,跨Rail流量经Spine转发。这种拓扑在千卡规模下可显著降低布线复杂度与成本。

网络接口定义上,计算网络使用InfiniBand或RoCEv2,MTU建议4096(IB)或9000(RoCE),启用GPUDirect RDMA,使GPU显存与网卡之间直接传输,绕过CPU与系统内存。管理网络使用1G/10G以太网,承载SSH、调度、监控、部署流量,与计算网络物理隔离,避免运维流量干扰训练通信。

三、逻辑拓扑图

下图给出一个中等规模(约64~128 GPU)集群的逻辑拓扑,包含五类节点、两张网络以及关键接口标注。图中实线表示高速计算网络,虚线表示管理/存储网络。

GPU计算集群逻辑拓扑(示例:64~128 GPU) 用户 / 外部网络 SSH / SCP / 作业提交 登录节点 ×2 SSH / 编译 / 数据搬运 管理节点 ×2(HA) Slurm / 监控 / 部署 / LDAP 管理网络 1G/10G Ethernet(控制、监控、部署、认证) Spine 交换机层(InfiniBand NDR / RoCEv2 400G) Leaf-1(Rail-1) Leaf-2(Rail-2) Leaf-N(Rail-N) 计算节点 01 8×GPU + NVLink 2×CPU / 2TB / NDR 计算节点 02 8×GPU + NVLink 2×CPU / 2TB / NDR 计算节点 … 8×GPU + NVLink 2×CPU / 2TB / NDR 计算节点 N 8×GPU + NVLink 2×CPU / 2TB / NDR 存储节点(Lustre / WEKA) MDS ×2 + OSS ×N,容量/带宽按GPU配比 存储网络 高速计算网络(IB/RoCE) 管理网络(Ethernet)

四、子系统接口定义

接口定义是架构设计中容易被忽略但最影响后期运维的部分。建议在方案阶段明确以下接口:

接口连接对象协议/介质关键约定
计算通信接口计算节点 ↔ Leaf/SpineInfiniBand NDR 或 RoCEv2 400G启用GPUDirect RDMA,MTU 4096/9000,PFC/ECN无损配置
管理控制接口所有节点 ↔ 管理节点1G/10G Ethernet独立VLAN,承载Slurm、监控、部署、LDAP流量
存储访问接口计算/登录节点 ↔ 存储节点Lustre LNet / NFS over RDMA挂载点统一为 /home、/scratch、/apps,配额按项目分配
用户接入接口用户 ↔ 登录节点SSH / SFTP仅登录节点暴露公网,计算节点禁止直接登录
作业调度接口登录节点 ↔ 管理节点 ↔ 计算节点Slurm slurmctld / slurmd分区(partition)按GPU型号与队列划分,QoS限制资源

五、设计要点与常见误区

第一,计算网络与管理网络必须物理隔离。将监控、部署流量与All-Reduce流量混跑,会在训练高峰期造成网络抖动,表现为NCCL超时或吞吐下降。第二,登录节点不要配GPU,否则用户会绕过调度器直接占用算力,破坏公平性。第三,存储带宽要按GPU数量配比,若64块GPU共享一条100G存储链路,数据加载会成为瓶颈,建议每8~16块GPU对应一条200G以上存储链路。第四,管理节点高可用,Slurm Controller、LDAP、监控至少双机部署,避免单点故障导致整个集群不可调度。

在方案评审时,建议用本节的逻辑拓扑图逐项核对:每个节点是否只接入其应接入的网络?每条链路带宽是否与GPU数量匹配?接口协议是否明确到具体版本?这三问能过滤掉大部分后期返工。

总体而言,GPU计算集群的架构设计不是追求设备清单的堆砌,而是让计算、管理、登录、存储、网络五个子系统各司其职、接口清晰、带宽匹配。逻辑拓扑图与接口表是这一设计最直接的交付物,也是后续部署、验收与扩容的依据。