Skip to main content
NetApp artificial intelligence solutions
本繁體中文版使用機器翻譯,譯文僅供參考,若與英文版本牴觸,應以英文版本為準。

NVA-1173 NetApp AIPod與NVIDIA DGX 系統 - 部署詳情

本節介紹驗證此解決方案期間所使用的部署細節。使用的 IP 位址僅供參考,請依部署環境進行修改。有關此配置的實現中使用的特定命令的更多信息,請參閱相應的產品文檔。

下圖顯示了 1 個 DGX H100 系統和 1 個 HA 對AFF A90控制器的詳細網路和連接資訊。以下部分中的部署指南是基於此圖中的詳細資訊。

NetApp AIpod 網路配置

此圖顯示輸入/輸出對話框或表示書面內容

下表顯示了最多 16 個 DGX 系統和 2 個AFF A90 HA 對的範例佈線分配。

交換器和連接埠 裝置 設備連接埠

交換器1埠1-16

DGX-H100-01 至 -16

enp170s0f0np0,插槽1埠1

交換器1埠17-32

DGX-H100-01 至 -16

enp170s0f1np1,插槽1埠2

交換器1埠33-36

AFF-A90-01 至 -04

端口 e6a

交換器1埠37-40

AFF-A90-01 至 -04

端口 e11a

交換器1埠41-44

AFF-A90-01 至 -04

端口 e2a

交換器1埠57-64

ISL 到交換器 2

埠 57-64

交換器2埠1-16

DGX-H100-01 至 -16

enp41s0f0np0,插槽2埠1

交換器2埠17-32

DGX-H100-01 至 -16

enp41s0f1np1,插槽 2 埠 2

交換器2埠33-36

AFF-A90-01 至 -04

埠 e6b

交換器2埠37-40

AFF-A90-01 至 -04

埠 e11b

交換器2埠41-44

AFF-A90-01 至 -04

埠 e2b

交換器2埠57-64

ISL 到交換器 1

埠 57-64

下表顯示了本次驗證中使用的各個組件的軟體版本。

裝置 軟體版本

NVIDIA SN4600 交換機

Cumulus Linux v5.9.1

NVIDIA DGX 系統

DGX 作業系統 v6.2.1(Ubuntu 22.04 LTS)

Mellanox OFED

24.01

NetApp AFF A90

NetApp ONTAP 9.14.1

儲存網路配置

本節概述乙太網路儲存網路配置的關鍵細節。有關配置 InfiniBand 計算網路的信息,請參閱"NVIDIA BasePOD 文檔"。有關交換器配置的詳細信息,請參閱"NVIDIA Cumulus Linux 文檔"

設定 SN4600 交換器的基本步驟概述如下。此程序假定佈線和基本交換器設定(管理 IP 位址、許可證等)已完成。

  1. 配置交換器之間的 ISL 綁定以啟用多鏈路聚合 (MLAG) 和故障轉移流量

    • 本次驗證使用了 8 條鏈路,為測試的儲存配置提供了足夠的頻寬

    • 有關啟用 MLAG 的具體說明,請參閱 Cumulus Linux 文件。

  2. 為兩台交換器上的每對用戶端連接埠和儲存連接埠配置 LACP MLAG

    • 每個交換器上的連接埠 swp17 用於 DGX-H100-01(enp170s0f1np1 和 enp41s0f1np1),連接埠 swp18 用於 DGX-H100-02,等等(bond1-16)

    • 每個交換器上的連接埠 swp41 用於AFF-A90-01(e2a 和 e2b),連接埠 swp42 用於AFF-A90-02,等等(bond17-20)

    • nv 設定介面 bondX 鍵成員 swpX

    • nv 設定介面 bondx 綁定 mlag id X

  3. 將所有連接埠和 MLAG 綁定新增至預設橋接域

    • nv 設定 int swp1-16,33-40 橋接域 br_default

    • nv 設定 int bond1-20 橋接域 br_default

  4. 在每台交換器上啟用 RoCE

    • nv 設定 roce 模式無損

  5. 配置 VLAN - 2 個用於客戶端端口,2 個用於儲存端口,1 個用於管理,1 個用於 L3 交換器到交換機

    • 開關 1-

      • VLAN 3 用於在用戶端 NIC 發生故障時進行 L3 交換器到交換器的路由

      • 每個 DGX 系統上的儲存連接埠 1 的 VLAN 101(enp170s0f0np0,slot1 連接埠 1)

      • 每個AFF A90儲存控制器上的連接埠 e6a 和 e11a 的 VLAN 102

      • VLAN 301 用於使用 MLAG 介面對每個 DGX 系統和儲存控制器進行管理

    • 開關 2-

      • VLAN 3 用於在用戶端 NIC 發生故障時進行 L3 交換器到交換器的路由

      • 每個 DGX 系統上的儲存連接埠 2 的 VLAN 201(enp41s0f0np0,slot2 連接埠 1)

      • 每個AFF A90儲存控制器上的連接埠 e6b 和 e11b 的 VLAN 202

      • VLAN 301 用於使用 MLAG 介面對每個 DGX 系統和儲存控制器進行管理

  6. 根據需要將實體連接埠指派給每個 VLAN,例如客戶端 VLAN 中的用戶端連接埠和儲存 VLAN 中的儲存連接埠

    • nv 設定 int <swpX> 橋接域 br_default 存取 <vlan id>

    • MLAG 連接埠應保持為中繼端口,以根據需要在綁定介面上啟用多個 VLAN。

  7. 在每個 VLAN 上設定交換器虛擬介面 (SVI) 以充當網關並啟用 L3 路由

    • 開關 1-

      • nv 設定 int vlan3 ip 位址 100.127.0.0/31

      • nv 設定 int vlan101 ip 位址 100.127.101.1/24

      • nv 設定 int vlan102 ip 位址 100.127.102.1/24

    • 開關 2-

      • nv 設定 int vlan3 ip 位址 100.127.0.1/31

      • nv 設定 int vlan201 ip 位址 100.127.201.1/24

      • nv 設定 int vlan202 ip 位址 100.127.202.1/24

  8. 建立靜態路由

    • 同一交換器上的子網路將自動建立靜態路由

    • 當客戶端連結發生故障時,交換器到交換器的路由需要額外的靜態路由

      • 開關 1-

        • nv 設定 VRF 預設路由器靜態 100.127.128.0/17 通過 100.127.0.1

      • 開關 2-

        • nv 設定 VRF 預設路由器靜態 100.127.0.0/17 透過 100.127.0.0

儲存系統配置

本節介紹此解決方案的 A90 儲存系統配置的關鍵細節。有關ONTAP系統配置的更多詳細信息,請參閱"ONTAP 文件"。下圖顯示了儲存系統的邏輯配置。

NetApp A90 儲存叢集邏輯配置

此圖顯示輸入/輸出對話框或表示書面內容

配置儲存系統的基本步驟概述如下。此過程假設基本儲存叢集安裝已經完成。

  1. 在每個控制器上配置 1 個聚合,所有可用分割區減去 1 個備用分割區

    • aggr create -node <節點> -aggregate <節點>_data01 -diskcount <47>

  2. 在每個控制器上配置 ifgrps

    • 網路連接埠 ifgrp create -node <節點> -ifgrp a1a -mode multimode_lacp -distr-function port

    • 網路連接埠 ifgrp add-port -node <節點> -ifgrp <ifgrp> -ports <節點>:e2a,<節點>:e2b

  3. 在每個控制器上的 ifgrp 上設定 mgmt vlan 端口

    • 網路連接埠 vlan 建立 -節點 aff-a90-01 -連接埠 a1a -vlan-id 31

    • 網路連接埠 vlan 建立 -節點 aff-a90-02 -連接埠 a1a -vlan-id 31

    • 網路連接埠 vlan 建立 -節點 aff-a90-03 -連接埠 a1a -vlan-id 31

    • 網路連接埠 vlan 建立 -節點 aff-a90-04 -連接埠 a1a -vlan-id 31

  4. 建立廣播域

    • 廣播域創建-廣播域vlan21-mtu 9000-連接埠aff-a90-01:e6a,aff-a90-01:e11a,aff-a90-02:e6a,aff-a90-02:e11a,aff-a90-03:e6a,aff-a90-03:e11a,aff-a90-03:e6a,aff-a90-03:e11a,affa:96a-6a

    • 廣播域創建-廣播域vlan22-mtu 9000-埠aaff-a90-01:e6b,aff-a90-01:e11b,aff-a90-02:e6b,aff-a90-02:e11b,aff-a90-03:e6b,aff-a90-02:e11b,aff-a90-03:e6b,aff-a90-03:e11baff-a90-03:e6b,aff-a90-03:e11b,affa

    • 廣播域創建-廣播域vlan31-mtu 9000-端口aff-a90-01:a1a-31,aff-a90-02:a1a-31,aff-a90-03:a1a-31,aff-a90-04:a1a-31

  5. 建立管理 SVM *

  6. 配置管理 SVM

    • 創建 LIF

      • net int create -vserver basepod-mgmt -lif vlan31-01 -home-node aff-a90-01 -home-port a1a-31 -address 192.168.31.X -netmask 255.255.255.0

    • 創建FlexGroup磁碟區-

      • 卷創建-vserver basepod-mgmt-volume home-size 10T-auto-provision-as flexgroup-junction-path /home

      • 卷創建-vserver basepod-mgmt-volume cm-size 10T-auto-provision-as flexgroup-junction-path /cm

    • 制定出口政策

      • 匯出政策規則建立-vserver basepod-mgmt-policy default-client-match 192.168.31.0/24-rorule sys-rwrule sys-superuser sys

  7. 建立資料SVM*

  8. 配置資料 SVM

    • 配置 SVM 以支援 RDMA

      • vserver nfs 修改-vserver basepod-data -rdma 已啟用

    • 創建 LIF

      • net int create -vserver basepod-data -lif c1-6a-lif1 -home-node aff-a90-01 -home-port e6a -address 100.127.102.101 -netmask 255.255.255.0

      • net int create -vserver basepod-data -lif c1-6a-lif2 -home-node aff-a90-01 -home-port e6a -address 100.127.102.102 -netmask 255.255.255.0

      • net int create -vserver basepod-data -lif c1-6b-lif1 -home-node aff-a90-01 -home-port e6b -address 100.127.202.101 -netmask 255.255.255.0

      • net int create -vserver basepod-data -lif c1-6b-lif2 -home-node aff-a90-01 -home-port e6b -address 100.127.202.102 -netmask 255.255.255.0

      • net int create -vserver basepod-data -lif c1-11a-lif1 -home-node aff-a90-01 -home-port e11a -address 100.127.102.103 -netmask 255.255.255.0

      • net int create -vserver basepod-data -lif c1-11a-lif2 -home-node aff-a90-01 -home-port e11a -address 100.127.102.104 -netmask 255.255.255.0

      • net int create-vserver basepod-data-lif c1-11b-lif1-home-node aff-a90-01-home-port e11b-address 100.127.202.103-netmask 255.255.255.0

      • net int create -vserver basepod-data -lif c1-11b-lif2 -home-node aff-a90-01 -home-port e11b -address 100.127.202.104 -netmask 255.255.255.0

      • net int create -vserver basepod-data -lif c2-6a-lif1 -home-node aff-a90-02 -home-port e6a -address 100.127.102.105 -netmask 255.255.255.0

      • net int create -vserver basepod-data -lif c2-6a-lif2 -home-node aff-a90-02 -home-port e6a -address 100.127.102.106 -netmask 255.255.255.0

      • net int create -vserver basepod-data -lif c2-6b-lif1 -home-node aff-a90-02 -home-port e6b -address 100.127.202.105 -netmask 255.255.255.0

      • net int create -vserver basepod-data -lif c2-6b-lif2 -home-node aff-a90-02 -home-port e6b -address 100.127.202.106 -netmask 255.255.255.0

      • net int create -vserver basepod-data -lif c2-11a-lif1 -home-node aff-a90-02 -home-port e11a -address 100.127.102.107 -netmask 255.255.255.0

      • net int create-vserver basepod-data-lif c2-11a-lif2-home-node aff-a90-02-home-port e11a-address 100.127.102.108-netmask 255.255.255.0

      • net int create -vserver basepod-data -lif c2-11b-lif1 -home-node aff-a90-02 -home-port e11b -address 100.127.202.107 -netmask 255.255.255.0

      • net int create-vserver basepod-data-lif c2-11b-lif2-home-node aff-a90-02-home-port e11b-address 100.127.202.108-netmask 255.255.255.0

  9. 配置 LIF 以進行 RDMA 訪問

    • 對於使用ONTAP 9.15.1 的部署,實體資訊的 RoCE QoS 設定需要ONTAP CLI 中不可用的作業系統層級指令。請聯絡NetApp支援以取得 RoCE 支援連接埠配置的協助。 NFS over RDMA 功能正常

    • 從ONTAP 9.16.1 開始,實體介面將自動配置適當的設定以實現端對端 RoCE 支援。

    • net int 修改-vserver basepod-data -lif * -rdma-protocols roce

  10. 在資料 SVM 上配置 NFS 參數

    • nfs 修改 -vserver basepod-data -v4.1 已啟用 -v4.1-pnfs 已啟用 -v4.1-trunking 已啟用 -tcp-max-transfer-size 262144

  11. 創建FlexGroup卷

    • 卷創建-vserver basepod-data-volume資料-size 100T-auto-provision-as flexgroup-junction-path /data

  12. 建立導出策略

    • 匯出政策規則建立-vserver basepod-data-policy default-client-match 100.127.101.0/24-rorule sys-rwrule sys-superuser sys

    • 匯出政策規則建立-vserver basepod-data-policy default-client-match 100.127.201.0/24-rorule sys-rwrule sys-superuser sys

  13. 創建路線

    • 路由新增-vserver basepod_data-目的地100.127.0.0/17-網關100.127.102.1度量20

    • 路由新增-vserver basepod_data-目的地100.127.0.0/17-網關100.127.202.1度量30

    • 路由新增-vserver basepod_data-目的地100.127.128.0/17-網關100.127.202.1度量20

    • 路由新增-vserver basepod_data-目的地100.127.128.0/17-網關100.127.102.1度量30

用於 RoCE 儲存存取的 DGX H100 配置

本節介紹 DGX H100 系統配置的關鍵細節。許多配置項目可以包含在部署到 DGX 系統的 OS 映像中,或在啟動時由 Base Command Manager 實作。這裡列出它們以供參考,有關在 BCM 中配置節點和軟體映像的更多信息,請參閱"BCM 文件"

  1. 安裝其他軟體包

    • ipmitool

    • python3-pip

  2. 安裝 Python 套件

    • 波羅米科

    • matplotlib

  3. 軟體包安裝後重新配置 dpkg

    • dpkg——配置-a

  4. 安裝 MOFED

  5. 設定 mst 值以進行效能調整

    • mstconfig -y -d <aa:00.0,29:00.0> 設定 ADVANCED_PCI_SETTINGS=1 NUM_OF_VFS=0 MAX_ACC_OUT_READ=44

  6. 修改設定後重置適配器

    • mlxfwreset -d <aa:00.0,29:00.0> -y 重置

  7. 在 PCI 裝置上設定 MaxReadReq

    • setpci -s <aa:00.0,29:00.0> 68.W=5957

  8. 設定 RX 和 TX 環形緩衝區大小

    • ethtool -G <enp170s0f0np0,enp41s0f0np0> rx 8192 tx 8192

  9. 使用 mlnx_qos 設定 PFC 和 DSCP

    • mlnx_qos -i <enp170s0f0np0,enp41s0f0np0> --pfc 0,0,0,1,0,0,0,0 --trust=dscp --cable_len=3

  10. 為網路連接埠上的 RoCE 流量設定 ToS

    • echo 106 > /sys/class/infiniband/<mlx5_7,mlx5_1>/tc/1/traffic_class

  11. 在適當的子網路上為每個儲存 NIC 設定一個 IP 位址

    • 100.127.101.0/24 用於儲存 NIC 1

    • 100.127.201.0/24 用於儲存 NIC 2

  12. 配置帶內網路連接埠進行 LACP 綁定(enp170s0f1np1、enp41s0f1np1)

  13. 為每個儲存子網路的主路徑和次路徑配置靜態路由

    • 路由新增 –net 100.127.0.0/17 gw 100.127.101.1 metric 20

    • 路由新增 –net 100.127.0.0/17 gw 100.127.201.1 metric 30

    • 路由新增 –net 100.127.128.0/17 gw 100.127.201.1 公制 20

    • 路由新增 –net 100.127.128.0/17 gw 100.127.101.1 公制 30

  14. 掛載 /home 卷

    • 安裝-o vers = 3,nconnect = 16,rsize = 262144,wsize = 262144 192.168.31.X:/home /home

  15. 掛載/資料卷

    • 安裝資料卷時使用了以下安裝選項-

      • vers=4.1 # 啟用 pNFS 來並行存取多個儲存節點

      • proto=rdma # 將傳輸協定設為 RDMA,而不是預設的 TCP

      • max_connect=16 #啟用 NFS 會話中繼來聚合儲存連接埠頻寬

      • write=eager # 提高緩衝寫入的寫入效能

      • rsize=262144,wsize=262144 # 將 I/O 傳輸大小設為 256k