Bereitstellen einer NetScaler BLX-Appliance mit DPDK-Unterstützung
NetScaler BLX-Appliances unterstützen das Data Plane Development Kit (DPDK), eine Reihe von Linux-Bibliotheken und Netzwerkschnittstellen-Controllern für eine bessere Netzwerkleistung. Eine BLX-Appliance mit DPDK-Unterstützung funktioniert nur im dedizierten Netzwerkmodus. Die Bereitstellung einer BLX-Appliance mit DPDK-Unterstützung auf einem Linux-Host besteht aus den folgenden Schritten:
- Laden Sie die DPDK-Bibliotheken auf den Linux-Host herunter, installieren Sie sie und kompilieren Sie sie
- DPDK auf dem Linux-Host konfigurieren
- BLX-Appliance für die DPDK-Unterstützung konfigurieren
- Erstmalige Einstellung der Verwaltungs-IP-Adresse der BLX-Appliance
- Starten der BLX-Appliance
Laden Sie die DPDK-Bibliotheken auf den Linux-Host herunter, installieren Sie sie und kompilieren Sie sie
DPDK-Bibliotheken werden auf der offiziellen DPDK-Website gehostet. Die Installation der DPDK-Bibliotheken auf dem Linux-Host umfasst das Extrahieren des DPDK-Pakets, das Festlegen von DPDK-Umgebungsvariablen und das Kompilieren der DPDK-Bibliotheken.
So laden Sie die unterstützten DPDK-Bibliotheken auf den Linux-Host herunter:
-
Rufen Sie die offizielle DPDK-Download-Seite auf.
-
Laden Sie die folgende unterstützte DPDK-Paketversion auf den Linux-Host herunter:
Nachdem Sie die DPDK-Bibliotheken heruntergeladen haben, extrahieren Sie das DPDK-Paket auf dem Linux-Host, legen Sie die DPDK-Umgebungsvariable RTE_SDK fest und kompilieren Sie dann die DPDK-Bibliotheken:
export RTE_SDK=<path to the extracted DPDK installation directory on the Linux host>
Weitere Informationen zum Installieren und Kompilieren von DPDK auf einem Linux-Gerät finden Sie in der offiziellen DPDK-Dokumentation unter der offiziellen DPDK-Dokumentation.
DPDK auf dem Linux-Host konfigurieren
Nach der Installation von DPDK-Bibliotheken müssen Sie DPDK auf dem Linux-Host konfigurieren. Die Konfiguration von DPDK umfasst die folgenden Aufgaben:
- Fügen Sie das DPDK IGB UIO-Kernelmodul ein
- Binden Sie die Linux-Host-NIC-Ports, die für die BLX-Appliance verwendet werden sollen, an das DPDK IGB-UIO-Modul.
-
hugepages
für DPDK einrichten
Verwenden Sie das DPDK-Setupskript (dpdk-setup.sh), das sich im usertools
DPDK-Unterverzeichnis befindet, um diese Aufgaben auszuführen.
Hinweis
Die folgenden DPDK-bezogenen Verfahren wurden zur Vereinfachung hinzugefügt. Weitere Informationen zur Konfiguration von DPDK auf einem Linux-System finden Sie in der offiziellen DPDK-Dokumentation unter der offiziellen DPDK-Dokumentation.
Fügen Sie das DPDK IGB UIO-Kernelmodul ein
So fügen Sie das DPDK IGB UIO-Kernelmodul ein:
-
Führen Sie das dpdk-setup.sh-Skript aus:
bash $RTE_SDK/usertools/dpdk-setup.sh
-
Geben Sie in der Benutzereingabeaufforderung Option 17 ein und drücken Sie die Eingabetaste.
. . [17] Insert IGB UIO module [18] Insert VFIO module [19] Insert KNI module [20] Setup hugepage mappings for non-NUMA systems [21] Setup hugepage mappings for NUMA systems [22] Display current Ethernet/Crypto device settings [23] Bind Ethernet/Crypto device to IGB UIO module [24] Bind Ethernet/Crypto device to VFIO module [25] Setup VFIO permissions . . ……………… [34] Exit Script Option: 17 <!--NeedCopy-->
Binden von Linux-Host-NIC-Ports an das DPDK-IGB-UIO-Modul
So binden Sie Linux-Host-NIC-Ports an das DPDK-IGB UIO-Modul:
-
Führen Sie das dpdk-setup.sh-Skript aus:
./$RTE_SDK/usertoos/dpdk-setup.sh
-
Geben Sie in der Benutzereingabeaufforderung Option 23 ein und drücken Sie die Eingabetaste.
. . [17] Insert IGB UIO module [18] Insert VFIO module [19] Insert KNI module [20] Setup hugepage mappings for non-NUMA systems [21] Setup hugepage mappings for NUMA systems [22] Display current Ethernet/Crypto device settings [23] Bind Ethernet/Crypto device to IGB UIO module [24] Bind Ethernet/Crypto device to VFIO module [25] Setup VFIO permissions . . ……………… [34] Exit Script Option: 23 <!--NeedCopy-->
-
Geben Sie in der Benutzeraufforderung die PCI-Adresse des Linux-Host-Ports ein, den Sie an das DPDK-IGB UIO-Kernelmodul binden möchten, und drücken Sie die Eingabetaste:
```
Netzwerkgeräte mit DPDK-kompatiblem Treiber ============================================
0000:83:00.1 'I350 Gigabit Fiber Network Connection 1522' drv=igb_uio unused=igb
Netzwerkgeräte mit Kerneltreiber ===================================
0000:01:00.0 ‘Ethernet Controller 10-Gigabit X540-AT2 1528’ if=eno1 drv=ixgbe unused=igb_uio Active 0000:01:00.1 ‘Ethernet Controller 10-Gigabit X540-AT2 1528’ if=eno2 drv=ixgbe unused=igb_uio 0000:83:00.0 ‘I350 Gigabit Fiber Network Connection 1522’ if=enp131s0f0 drv=igb unused=igb_uio 0000:02:00.0 ‘Ethernet Controller XL710 for 40GbE QSFP+ 1584’ drv=i40e unused=igb_uio. « add 0000:83:00.2 ‘I350 Gigabit Fiber Network Connection 1522’ if=enp131s0f2 drv=igb unused=igb_uio 0000:83:00.3 ‘I350 Gigabit Fiber Network Connection 1522’ if=enp131s0f3 drv=igb unused=igb_uio 0000:84:00.0 ‘I350 Gigabit Fiber Network Connection 1522’ if=enp132s0f0 drv=igb unused=igb_uio 0000:84:00.1 ‘I350 Gigabit Fiber Network Connection 1522’ if=enp132s0f1 drv=igb unused=igb_uio ……….. Mempool-Geräte verwenden Kernel-Treiber ===================================
<none>
Andere Mempool-Geräte =====================
<none>
Enter PCI address of device to bind to IGB UIO driver: 0000:02:00.0
```
- Wiederholen Sie die obigen Schritte, um einen weiteren Linux-Host-Netzwerkport an das DPDK-IGB-UIO-Modul zu binden.
hugepages
für DPDK einrichten
So richten Sie hugepages
für DPDK ein:
-
Führen Sie das dpdk-setup.sh-Skript aus:
./$RTE_SDK/usertoos/dpdk-setup.sh
-
Geben Sie Option 20 oder 21, basierend auf der Linux-Host-Speicherarchitektur, in die Benutzeraufforderung ein und drücken Sie die Eingabetaste.
. . [17] Insert IGB UIO module [18] Insert VFIO module [19] Insert KNI module [20] Setup hugepage mappings for non-NUMA systems. [21] Setup hugepage mappings for NUMA systems [22] Display current Ethernet/Crypto device settings [23] Bind Ethernet/Crypto device to IGB UIO module [24] Bind Ethernet/Crypto device to VFIO module [25] Setup VFIO permissions . . ……………… [34] Exit Script Option: 21
-
Geben Sie in der Benutzeraufforderung die Anzahl von
hugepages
ein, die für DPDK reserviert werden soll, und drücken Sie die Eingabetaste:Removing currently reserved hugepages Unmounting /mnt/huge and removing directory Input the number of 2048kB hugepages Example: to have 128MB of hugepages available in a 2MB huge page system, enter '64' to reserve 64 * 2MB pages Number of pages: 1024 Reserving hugepages Creating /mnt/huge and mounting as hugetlbfs
BLX-Appliance für die DPDK-Unterstützung konfigurieren
Um die BLX-Appliance für die DPDK-Unterstützung zu konfigurieren, müssen Sie den folgenden Parameter in der BLX-Konfigurationsdatei (blx.conf) festlegen.
- DPDK-Konfiguration. Dieser Parameter ermöglicht es der BLX-Appliance, im DPDK-Modus zu starten, um eine bessere Leistung zu erzielen. Außerdem gibt dieser Parameter die Anzahl der Paket-Engines an, die von der BLX-Appliance mit DPDK-Unterstützung verwendet werden sollen. Der Standardwert ist auf 8 (0xff) festgelegt. Die maximale Anzahl von Paket-Engines, die von der BLX-Appliance mit DPDK-Unterstützung unterstützt werden, beträgt 28.
Hinweis
Nach dem Einstellen des Parameters
DPDK config
und dem Starten der BLX-Appliance werden die DPDK-gebundenen Linux-NIC-Ports automatisch als Teil der BLX-Appliance hinzugefügt.
So konfigurieren Sie die BLX-Appliance für die DPDK-Unterstützung:
-
Öffnen Sie die BLX-Konfigurationsdatei (blx.conf), die auf dem Linux-Host vorhanden ist. Der vollständige Pfad der BLX-Konfigurationsdatei lautet:
/etc/blx/blx.conf
-
Entkommentieren Sie die folgende Zeile, die den Parameter
dpdk-config
enthält, in der BLX-Konfigurationsdatei (blx.conf), indem Sie das # (Hash-Symbol) am Anfang der Zeile entfernen:# dpdk-config: -c 0xff
Beispiel Konfiguration
Im folgenden Beispielauszug einer
blx.conf
-Datei ist die Einstellung des Parametersdpdk-config
aktiviert.. . # dpdk EAL core mask parameter. Applicable only when blx-dpdk is installed. dpdk-config: -c 0xff . .
Erstmalige Einstellung der Verwaltungs-IP-Adresse der BLX-Appliance
Die Verwaltungs-IP-Adresse einer BLX-Appliance ist die IP-Adresse, unter der Sie zu Verwaltungszwecken auf die Appliance zugreifen. Die Verwaltungs-IP-Adresse der BLX-Appliance wird auch als Citrix ADC IP (NSIP) -Adresse bezeichnet.
Eine BLX-Appliance kann nur eine Citrix ADC IP (NSIP) -Adresse haben. Außerdem müssen Sie eine Standardroute für das konfigurierte Citrix ADC IP-Subnetz hinzufügen, damit die Citrix ADC IP von anderen Netzwerken im LAN aus erreichbar ist.
Um die Verwaltungs-IP-Adresse der BLX-Appliance zum ersten Mal festzulegen, müssen Sie die entsprechenden Parameter in der BLX-Konfigurationsdatei (blx.conf) festlegen.
So legen Sie die Verwaltungs-IP-Adresse und die Standardroute zum ersten Malfest:
-
Öffnen Sie die BLX-Konfigurationsdatei (blx.conf), die auf dem Linux-Host vorhanden ist. Der vollständige Pfad der BLX-Konfigurationsdatei lautet:
/etc/blx/blx.conf
-
Kommentieren Sie den folgenden Parameter aus und legen Sie die Verwaltungs-IP-Adresse fest:
# ipaddress:
-
Kommentieren Sie den folgenden Parameter aus und legen Sie die Standardroute im Abschnitt der statischen Route fest:
# default
Beispiel Konfiguration:
Im folgenden Beispielauszug einer blx.conf file
-Datei werden die Verwaltungs-IP-Adresse und die Standardroute festgelegt:
.
.
ipaddress: 203.0.113.10
.
.
default 203.0.113.1
.
.
Starten der BLX-Appliance mit DPDK-Unterstützung
Starten Sie die BLX-Appliance, indem Sie den folgenden Befehl ausführen:
systemctl start blx
Die BLX-Appliance befindet sich jetzt im Status Up.
Überprüfen Sie erneut den Status der BLX-Appliance:
systemctl status blx
Nach der erfolgreichen Installation und dem Start einer BLX-Appliance können Sie die Citrix ADC-Funktionen auf der Appliance mit einer der folgenden Methoden konfigurieren:
- Citrix ADC CLI
- Citrix ADC GUI
- Citrix NITRO REST-APIs
Weitere Informationen zur Verwendung dieser Methoden finden Sie unter Konfigurieren einer BLX-Appliance.
Weitere Informationen zu Citrix ADC-Funktionen finden Sie in der Citrix ADC-Dokumentation. ```
In diesem Artikel
- Laden Sie die DPDK-Bibliotheken auf den Linux-Host herunter, installieren Sie sie und kompilieren Sie sie
- DPDK auf dem Linux-Host konfigurieren
- BLX-Appliance für die DPDK-Unterstützung konfigurieren
- Erstmalige Einstellung der Verwaltungs-IP-Adresse der BLX-Appliance
- Starten der BLX-Appliance mit DPDK-Unterstützung