Gleichzeitiges Multithreading für NetScaler VPX in öffentlichen Clouds konfigurieren
NetScaler® verwendet verschiedene dedizierte Kerne für sein Management und seine Datenebenenfunktionen. Ein Kern wird typischerweise den Managementebenenfunktionen zugewiesen. Die restlichen verfügbaren Kerne werden den Datenebenenfunktionen zugewiesen.
Die folgende Abbildung zeigt eine vereinfachte Darstellung eines 4-Kern-NetScaler VPX.
Abbildung 1. NetScaler Management- und Datenebenen-Workload auf einem 4-Kern-System

Während die vorhergehende Abbildung die Verteilung der NetScaler-Funktionen auf die verfügbaren Kerne zeigt, ist sie nicht unbedingt eine genaue Darstellung der zugrunde liegenden Hardware. Die meisten modernen x86-CPUs bieten zwei logische Kerne pro physischem Kern, durch Funktionen, die kommerziell als Intel Hyperthreading (HT) oder AMD Simultaneous Multithreading (SMT) bekannt sind.
Die folgende Abbildung zeigt NetScaler VPX, das auf einer modernen CPU mit deaktiviertem SMT ausgeführt wird. Jeder CPU-Kern ist in zwei oder mehr logische CPUs aufgeteilt, die gemeinhin als Threads bezeichnet werden. Jeder Thread verfügt über einen eigenen Satz replizierter Ressourcen, einen Teil partitionierter Ressourcen und konkurriert mit seinen Geschwister-Threads um gemeinsam genutzte Ressourcen.
Abbildung 2. NetScaler Management- und Datenebenen-Workload auf einem 4-Kern-/8-Thread-System mit deaktiviertem SMT

Die folgende Abbildung zeigt NetScaler VPX, das auf einer modernen CPU mit aktiviertem SMT ausgeführt wird.
Abbildung 3. NetScaler Management- und Datenebenen-Workload auf einem 4-Kern-System mit aktiviertem SMT

Das Aktivieren von SMT verbessert die NetScaler-Leistung durch:
- Ausführen von Datenebenenfunktionen auf allen physischen Kernen.
- Verschieben der Managementebenenfunktionen auf den Geschwister-Thread.
- Einführung eines flexiblen Ressourcenbegrenzungsmechanismus, um zu verhindern, dass Funktionen der Management-Ebene die Leistung der Funktionen der Datenebene beeinträchtigen.
SMT-Unterstützungsmatrix
Die VPX-Plattformen, Cloud-Instanztypen und NetScaler-Versionen, die SMT unterstützen, sind in der folgenden Tabelle aufgeführt.
| VPX-Plattform | Instanztypen | NetScaler VPX-Version |
|---|---|---|
| AWS | M5, m5n, c5, c5n | 14.1-12.x und höher |
| Azure | Jede Instanzfamilie mit Hyperthreading, zum Beispiel Ds_v4 | 14.1-12.x und höher |
| GCP | e2-Instanzen | 14.1-12.x und höher |
Hinweis:
Durch die Aktivierung der SMT-Funktion wird die Leistung von NetScaler VPX auf den unterstützten Typen gesteigert.
Einschränkungen
Die SMT-Funktion verdoppelt effektiv die für eine NetScaler-Appliance verfügbaren vCPUs. Die Lizenzierungsgrenzen müssen berücksichtigt werden, damit die NetScaler-Appliance diese nutzen kann.
Betrachten Sie beispielsweise NetScaler VPX, wie in Abbildung 3 dargestellt. Wenn eine durchsatzbasierte Lizenzierung verwendet wird, ist eine Lizenz von 10 Gbit/s oder mehr mit der SMT-Funktion erforderlich, um 8 vCPUs zu aktivieren. Zuvor war eine 1-Gbit/s-Lizenz ausreichend, um 4 vCPUs zu aktivieren. Wenn eine vCPU-Lizenzierung verwendet wird, muss NetScaler VPX so konfiguriert werden, dass Lizenzen für die doppelte Anzahl von vCPUs für den ordnungsgemäßen Betrieb abgerufen werden. Wenden Sie sich an den technischen Support von NetScaler, um weitere Informationen zu diesem Thema zu erhalten.
SMT konfigurieren
Bevor Sie die SMT-Funktion aktivieren, stellen Sie sicher, dass Ihre Plattform diese Funktion unterstützt. Siehe die Support-Matrix-Tabelle im vorherigen Abschnitt.
Um die SMT-Funktion zu aktivieren, führen Sie die folgenden Schritte aus:
- Erstellen Sie eine leere Datei namens
.smt_handlingim Verzeichnis „/nsconfig“. - Speichern Sie die aktuelle Konfiguration.
-
Starten Sie die NetScaler VPX-Instanz neu.
nscli> shell touch /nsconfig/.smt_handling Done nscli> reboot Are you sure you want to restart NetScaler (Y/N)? [N]:Y Done <!--NeedCopy--> -
Nach dem Neustart zeigt NetScaler an, dass die Funktion sowohl verfügbar als auch aktiviert ist.
smt_handling and smt_handling_active are set to “1” > shell sysctl -a | grep smt_handling netscaler.smt_handling_platform: 1 netscaler.smt_handling: 1 netscaler.smt_handling_active: 1 <!--NeedCopy-->
Um die SMT-Funktion zu deaktivieren, führen Sie die folgenden Schritte aus:
- Entfernen Sie die Datei
.smt_handling. -
Starten Sie die NetScaler VPX-Instanz neu.
shell rm -f /nsconfig/.smt_handling Done reboot Are you sure you want to restart NetScaler (Y/N)? [N]:Y Done <!--NeedCopy--> -
Nach dem Neustart zeigt NetScaler an, dass die Funktion verfügbar, aber deaktiviert ist.
> shell sysctl -a | grep smt_handling netscaler.smt_handling_platform: 1 netscaler.smt_handling: 0 netscaler.smt_handling_active: 0 <!--NeedCopy-->
Fehlerbehebung
Führen Sie den Shell-Befehl sysctl aus, um den Status der SMT-Funktion zu überprüfen.
```
> shell sysctl -a | grep smt_handling
>
<!--NeedCopy--> ```
Der Befehl kann eine der folgenden Ausgaben zurückgeben.
-
Die SMT-Funktion fehlt.
Der Befehl
sysctlgibt keine Ausgabe zurück. -
Die SMT-Funktion wird nicht unterstützt.
Die SMT-Funktion wird aus einem der folgenden Gründe nicht unterstützt:
- Ihr NetScaler VPX ist älter als 13.1-48.x oder 14.1-12.x.
- Ihre Cloud unterstützt SMT nicht.
-
Ihr VM-Instanztyp unterstützt SMT nicht, z. B. ist die vCPU-Anzahl größer als 8.
> shell sysctl -a | grep smt_handling netscaler.smt_handling_platform: 0(indicates not supported) netscaler.smt_handling: 0 (indicates not enabled) netscaler.smt_handling_active: 0 (indicates not active) <!--NeedCopy-->
-
Die SMT-Funktion wird unterstützt, ist aber nicht aktiviert.
> shell sysctl -a | grep smt_handling netscaler.smt_handling_platform: 1 (available) netscaler.smt_handling: 0 (not enabled) netscaler.smt_handling_active: 0 (not active) <!--NeedCopy-->