架构#
本文档是 NVIDIA DGX BasePOD:部署指南,以 NVIDIA DGX A100 系统为例 的一部分。
硬件概述#
DGX BasePOD 由计算节点、五个控制平面服务器(两个用于集群管理,三个 Kubernetes (K8s) 控制平面节点)以及相关的存储和网络基础设施组成。
硬件概述见表 1。有关可以使用的硬件以及如何布线的详细信息,请参阅《NVIDIA DGX BasePOD 参考架构》。
本部署指南描述了在完成物理安装后配置和测试四节点 DGX BasePOD 所需的步骤。对于不同规模的 DGX BasePOD 部署以及为不同客户环境定制,可能需要对特定配置进行细微调整,但本文档中描述的总体流程应大致适用于任何配备 NVIDIA A100 的 DGX BasePOD 部署。
组件 |
技术 |
---|---|
计算节点 |
DGX A100 系统 |
计算 Fabric |
NVIDIA Quantum QM8700 HDR 200 Gbps InfiniBand |
管理 Fabric |
NVIDIA SN4600 交换机 |
存储 Fabric |
NVIDIA SN4600 交换机,用于以太网连接的存储
NVIDIA Quantum QM8700 HDR 200 Gb/s,用于 InfiniBand 连接的存储
|
带外管理 Fabric |
NVIDIA SN2201 交换机 |
控制平面 |
最低要求(每台服务器)
|
网络#
本节介绍 DGX 系统网络端口以及 DGX BasePOD 使用的网络概述。
DGX A100 系统网络端口#
图 1 显示了 DGX A100 系统的背面,其中展示了本解决方案指南中使用的网络端口配置。

图 1. DGX A100 系统背面#
以下端口被选用于 DGX BasePOD 网络
四个单端口 ConnectX-6 网卡用于 InfiniBand 计算 Fabric,底盘两侧各两个(红色标记)。
双端口 ConnectX-6 网卡的两个端口配置为绑定以太网接口,用于带内管理和存储网络。它们是插槽 4 的底部端口和插槽 5 的右侧端口(蓝色标记)。
BMC 网络访问通过带外网络提供(灰色标记)。
网络端口及其映射在《网络端口》部分的《NVIDIA DGX A100 系统用户指南》中进行了描述。
DGX BasePOD 网络概述#
DGX BasePOD 配置中包含四个网络
internalnet
— 专用于集群内部的网络,用于存储和带内管理。externalnet
— 将 DGX BasePOD 连接到外部网络的网络,例如企业或园区网络。ipminet
— 用于带外管理的网络,连接 BMC。ibnet
— 连接所有 DGX 系统的 ConnectX-6 计算 Fabric HCA 的 InfiniBand 网络。
这些如图 3 所示。

图 3. 网络设计和拓扑图#
internalnet 和 externalnet#
internalnet
使用 VLAN 122,externalnet
使用 VLAN 121。这两个 VLAN 都在 SN4600 交换机上配置,SN4600 交换机是 DGX BasePOD 以太网网络的主干。每个 DGX 系统都通过绑定接口连接到 SN4600 交换机,该接口由两个物理接口组成:插槽 4 底部端口(存储 4-2)和插槽 5 右侧端口(存储 5-2),如《网络端口》部分的《NVIDIA DGX A100 系统用户指南》所述。
K8s 控制平面节点和 NFS 存储设备也具有类似的绑定接口配置,连接到 SN4600 交换机。两台具有多机箱链路聚合 (MLAG) 的 SN4600 交换机为 DGX 系统、K8s 控制器节点以及其他具有绑定接口的设备提供冗余。Trunk 模式用于绑定接口,并将 VLAN 122 作为其本机 VLAN。Access 模式用于连接到 BCM 头节点的端口。接口之间使用的 BGP 协议在表 2 中进行了描述。所有连接的子网都重新分配到 BGP 中。
协议 |
描述 |
---|---|
BGP |
根据需要在交换机之间路由时使用 |
iBGP |
在两台 SN4600 之间使用 MLAG peerlink.4094 接口进行配置 |
eBGP |
在上行链路 (SN4600) 和 IPMI (SN2201) 交换机之间配置 |
ipminet#
在 ipminet
交换机上,配置了 VLAN 111 的网关,并且所有连接到终端主机的端口都配置为 VLAN 111 的接入端口。每个 BCM 头节点都需要两个连接到 IPMI 交换机的接口;第一个用于主机的 IPMI 接口,第二个用作主机操作系统直接访问 IPMI 子网。上行链路使用无编号 eBGP 连接到 TOR-01 和 TOR-02。所有连接的子网都重新分配到 BGP 中。如果需要,IPMI 交换机也可以上行连接到单独的管理网络,而不是 TOR 交换机;但 IPMI 子网路由仍必须通告到带内网络,以便 BCM 可以使用 IPMI 网络控制主机。
ibnet#
对于 ibnet
,物理 DGX 插槽 0 和 2 上的 NIC 连接到 QM8700-1 InfiniBand 交换机;物理 DGX 插槽 6 和 8 上的 NIC 连接到 QM8700-2 InfiniBand 交换机。为了管理 InfiniBand Fabric,需要一个子网管理器;必须将其中一台 8700 交换机配置为子网管理器。
网络端口及其映射在《网络端口》部分的《NVIDIA DGX A100 系统用户指南》中进行了描述。
软件#
Base Command Manager (BCM) 是 DGX BasePOD 的关键软件组件。BCM 用于在所有主机上配置操作系统、部署 K8s、可选部署 Jupyter,并提供集群运行状况的监控和可见性。
BCM 的一个实例在高可用性 (HA) 配置中的一对头节点上运行,并连接到 DGX BasePOD 中的所有其他节点。
DGX BasePOD 中的 DGX 系统通过 BCM 安装 DGX OS 镜像。同样,K8s 控制平面节点也由 BCM 镜像化,使用的 Ubuntu LTS 版本与 DGX OS 和头节点本身的版本相同。
Kubernetes#
Kubernetes (K8s) 是一个开源平台,用于自动化跨主机集群的应用程序容器的部署、扩展和操作。借助 K8s,可以实现
动态扩展应用程序。
无缝更新正在运行的服务。
通过仅使用所需的资源来优化硬件可用性。
集群管理器为管理员提供所需的软件包,允许设置 K8s,并管理和监控 K8s。
(可选)Jupyter#
BCM 可以选择部署和管理 Jupyter,它由四个主要组件和几个扩展组成。主要组件包括:Jupyter Notebook、JupyterLab、JupyterHub 和 Jupyter Enterprise Gateway。
以下是 BCM 部署的 Jupyter 扩展
模板专门化扩展 — 无需编辑文本文件即可创建自定义 Jupyter 内核。
作业管理扩展 — 从 Jupyter 界面内管理作业。
VNC 扩展 — 从 Jupyter 界面内与执行服务器的 X 显示(包括桌面)进行交互。
K8s 运算符 — Jupyter 内核、PostgreSQL 和 Spark 运算符。
Jupyter 开发服务器 — 代理服务器,允许在备用编辑器中开发应用程序,同时将计算工作负载代理到在集群上运行的 Jupyter Notebook。
存储#
高可用性 (HA) BCM 安装需要 NFS 解决方案,并且本文档描述了所需的导出路径。DGX BasePOD 通常还包括专用存储,但其配置不在本文档的范围之内。有关配置 DGX BasePOD 高性能存储部分的说明,请联系所用存储解决方案的供应商。