NVMe over RDMA in ESXi benötigt ein verlustfreies Ethernet-Netzwerk für effizienten Betrieb.

Zum Einrichten von verlustfreien Netzwerken können Sie eine der verfügbaren QoS-Einstellungen auswählen.

Aktivieren von Global Pause Flow Control

Stellen Sie in dieser Netzwerkkonfiguration sicher, dass Global Pause Flow Control auf dem Netzwerk-Switch-Port aktiviert ist. Stellen Sie außerdem sicher, dass RDMA-fähige Netzwerkkarten auf dem Host automatisch die richtige Flusssteuerung aushandeln.

Führen Sie die folgenden Befehle aus, um die Flusssteuerung zu überprüfen.

#esxcli network nic get -n vmnicX
   Pause RX: true
   Pause TX: true

Wenn die obigen Befehlsoptionen nicht auf „True“ festgelegt sind, führen Sie folgenden Befehl aus.

#esxcli network nic pauseParams set -r true -t true -n vmnicX

Aktivieren von Priority Flow Control

Für verlustfreien RoCE-Datenverkehr müssen Sie den PFC-Prioritätswert im physischen Switch und den Hosts auf 3 festlegen. Zum Konfigurieren der PFC im ESXi-Host stehen zwei Möglichkeiten zur Verfügung:
  • Automatische Konfiguration. Ab ESXi 7.0 können Sie die DCB-PFC-Konfiguration automatisch auf der Host-RNIC anwenden, wenn der RNIC-Treiber DCB und DCBx unterstützt.

    Sie können die aktuellen DCB-Einstellungen überprüfen, indem Sie den folgenden Befehl ausführen:

    #esxcli network nic dcb status get -n vmnicX
  • Manuelle Konfiguration. In bestimmten Fällen stellen die RNIC-Treiber eine Methode zur manuellen Konfiguration der DCB-PFC mithilfe von treiberspezifischen Parametern bereit. Informationen zur Verwendung dieser Methode finden Sie in der Treiberdokumentation des jeweiligen Herstellers. Im Mellanox ConnectX-4/5-Treiber können Sie den PFC-Prioritätswert beispielsweise auf 3 festlegen, indem Sie den folgenden Befehl ausführen und den Host neu starten.
    #esxcli system module parameters set -m nmlx5_core -p "pfctx=0x08 pfcrx=0x08"

Aktivieren einer DSCP-basierten PFC

Mit einer DSCP-basierten PFC erhalten Sie eine weitere Möglichkeit zum Konfigurieren eines verlustfreien Netzwerks. Für physische Switches und Hosts müssen Sie den DSCP-Wert auf 26 festlegen. Informationen zur Verwendung dieser Option finden Sie in der Treiberdokumentation des jeweiligen Herstellers. Im Mellanox ConnectX-4/5-Treiber können Sie den DSCP-Tag-Wert beispielsweise auf 26 festlegen, indem Sie die folgenden Befehle ausführen.
  • PFC- und DSCP-Vertrauensmodus aktivieren
    #esxcli system module parameters set -m nmlx5_core -p "pfctx=0x08 pfcrx=0x08 trust_state=2"
    
  • Wert für DSCP auf 26 festlegen
    #esxcli system module parameters set -m nmlx5_rdma -p "dscp_force=26"
  • Überprüfen Sie die Parameter, um zu bestätigen, ob die Einstellungen korrekt und festgelegt sind.
    esxcli system module parameters list -m nmlx5_core | grep 'trust_state\|pfcrx\|pfctx'
  • Host neu starten