Voraussetzungen für die Installation einer NetScaler VPX-Instanz auf der Linux-KVM-Plattform
Überprüfen Sie die Mindestsystemanforderungen für einen Linux-KVM-Server, der auf einer NetScaler VPX-Instanz ausgeführt wird.
CPU-Anforderung:
- 64-Bit-x86-Prozessoren mit der Hardwarevirtualisierungsfunktion, die in Intel VT-X-Prozessoren enthalten ist.
Um zu testen, ob Ihre CPU den Linux-Host unterstützt, geben Sie den folgenden Befehl an der Linux-Shell-Eingabeaufforderung
*.egrep '^flags.*(vmx|svm)' /proc/cpuinfo*
<!--NeedCopy-->
Wenn die BIOS-Einstellungen für die vorhergehende Erweiterung deaktiviert sind, müssen Sie sie im BIOS aktivieren.
-
Stellen Sie mindestens 2 CPU-Kerne für Host Linux bereit.
-
Es gibt keine spezifische Empfehlung für die Prozessorgeschwindigkeit, aber je höher die Geschwindigkeit, desto besser ist die Leistung der VM-Anwendung.
Speicherbedarf (RAM):
Mindestens 4 GB für den Host-Linux-Kernel. Fügen Sie mehr Arbeitsspeicher hinzu, wie es von den VMs benötigt wird.
Festplattenanforderung:
Berechnen Sie den Speicherplatz für den Host-Linux-Kernel und die VM-Anforderungen. Eine einzelne NetScaler VPX-VM benötigt 20 GB Festplattenspeicher.
Softwareanforderungen
Der verwendete Host-Kernel muss ein 64-Bit-Linux-Kernel, Version 2.6.20 oder höher, mit allen Virtualisierungstools sein. Citrix empfiehlt neuere Kernel wie 3.6.11-4 und höher.
Viele Linux-Distributionen wie Red Hat, CentOS und Fedora haben Kernelversionen und zugehörige Virtualisierungstools getestet.
Hardwareanforderungen für Gast-VM
NetScaler VPX unterstützt IDE- und VirtIO-Festplattentypen. Der Festplattentyp wurde in der XML-Datei konfiguriert, die Teil des NetScaler-Pakets ist.
Netzwerkanforderungen
NetScaler VPX unterstützt paravirtualisierte VirtIO-, SR-IOV- und PCI-Passthrough-Netzwerkschnittstellen.
Weitere Informationen zu den unterstützten Netzwerkschnittstellen finden Sie unter:
- NetScaler VPX-Instanz mithilfe des Virtual Machine Managers bereitstellen
- Konfigurieren Sie eine NetScaler VPX-Instanz für die Verwendung von SR-IOV-Netzwerkschnittstellen
- Konfigurieren Sie eine NetScaler VPX-Instanz für die Verwendung von PCI-Passthrough-Netzwerkschnittstellen
Quellschnittstelle und Modi
Der Quellgerätetyp kann entweder Bridge oder MacVTap sein. In MacVTap sind vier Modi möglich - VEPA, Bridge, Private und Pass-Through. Überprüfen Sie die Arten von Schnittstellen, die Sie verwenden können, und die unterstützten Datenverkehrstypen wie folgt:
Brücke:
- Linux-Brücke.
-
Ebtables
undiptables
Einstellungen auf Host Linux filtern möglicherweise den Datenverkehr auf der Bridge, wenn Sie nicht die richtige Einstellung auswählen oderIPtable
Dienste deaktivieren.
MacVTap (VEPA-Modus):
- Bessere Leistung als eine Brücke.
- Schnittstellen desselben niedrigeren Geräts können von allen VMs gemeinsam genutzt werden.
- Inter-VM-Kommunikation mit derselben
- niedrigeres Gerät ist nur möglich, wenn der Upstream- oder Downstream-Switch den VEPA-Modus unterstützt.
MacVTap (privater Modus):
- Bessere Leistung als eine Brücke.
- Schnittstellen desselben niedrigeren Geräts können von allen VMs gemeinsam genutzt werden.
- Eine VM-Kommunikation mit demselben niedrigeren Gerät ist nicht möglich.
MacVTAP (Bridge-Modus):
- Besser im Vergleich zu Bridge.
- Schnittstellen von demselben niedrigeren Gerät können für die VMs gemeinsam genutzt werden.
- Die Kommunikation zwischen VM mit demselben niedrigeren Gerät ist möglich, wenn die untere Geräteverbindung UP ist.
MacVTap (Pass-Through-Modus):
- Besser im Vergleich zu Bridge.
- Schnittstellen von demselben niedrigeren Gerät können nicht für die VMs freigegeben werden.
- Nur eine VM kann das untere Gerät verwenden.
Hinweis:
Um eine optimale Leistung der VPX-Instanz zu erzielen, stellen Sie sicher, dass die Funktionen
gro
undlro
auf den Quellschnittstellen deaktiviert sind.
Eigenschaften von Quellschnittstellen
Stellen Sie sicher, dass Sie die Funktionen generic-Receive-offload (gro
) und Large-Receive-Offload (lro
) der Quellschnittstellen ausschalten. Um die lro
Funktionen gro
und auszuschalten, führen Sie die folgenden Befehle an der Linux-Shell des Hosts aus.
ethtool -K eth6 gro aus
ethool -K eth6 lro aus
Beispiel:
[root@localhost ~]# ethtool -K eth6
Offload parameters for eth6:
rx-checksumming: on
tx-checksumming: on
scatter-gather: on
tcp-segmentation-offload: on
udp-fragmentation-offload: off
generic-segmentation-offload: on
generic-receive-offload: off
large-receive-offload: off
rx-vlan-offload: on
tx-vlan-offload: on
ntuple-filters: off
receive-hashing: on
[root@localhost ~]#
<!--NeedCopy-->
Beispiel:
Wenn die Linux-Brücke des Hosts wie im folgenden Beispiel als Quellgerät verwendet wird, müssen die lro
Funktionen an den VNet-Schnittstellen ausgeschaltet werden, bei denen es sich um die virtuellen Schnittstellen handelt, die den Host mit den Gast-VMs verbinden.
[root@localhost ~]# brctl show eth6_br
bridge name bridge id STP enabled interfaces
eth6_br 8000.00e0ed1861ae no eth6
vnet0
vnet2
[root@localhost ~]#
<!--NeedCopy-->
Im vorhergehenden Beispiel werden die beiden virtuellen Schnittstellen von eth6_br abgeleitet und werden als vnet0 und vnet2 dargestellt. Führen Sie die folgenden Befehle aus, um auszuschalten gro
und lro
Funktionen für diese Schnittstellen.
ethtool -K vnet0 gro off
ethtool -K vnet2 gro off
ethtool -K vnet0 lro off
ethtool -K vnet2 lro off
<!--NeedCopy-->
Promiscuous-Modus
Der Promiscuous-Modus muss aktiviert sein, damit die folgenden Funktionen funktionieren:
- L2-Modus
- Verarbeitung des Multicast-Datenverkehrs
- Übertragung
- IPv6-Verkehr
- virtueller MAC
- Dynamisches Routing
Verwenden Sie den folgenden Befehl, um den Promiscuous-Modus zu aktivieren.
[root@localhost ~]# ifconfig eth6 promisc
[root@localhost ~]# ifconfig eth6
eth6 Link encap:Ethernet HWaddr 78:2b:cb:51:54:a3
inet6 addr: fe80::7a2b:cbff:fe51:54a3/64 Scope:Link
UP BROADCAST RUNNING PROMISC MULTICAST MTU:9000 Metric:1
RX packets:142961 errors:0 dropped:0 overruns:0 frame:0
TX packets:2895843 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:14330008 (14.3 MB) TX bytes:1019416071 (1.0 GB)
[root@localhost ~]#
<!--NeedCopy-->
Modul erforderlich
Stellen Sie für eine bessere Netzwerkleistung sicher, dass das Modul vhost_net auf dem Linux-Host vorhanden ist. Um zu überprüfen, ob das Modul vhost_net vorhanden ist, führen Sie den folgenden Befehl auf dem Linux-Host aus:
lsmod | grep "vhost\_net"
<!--NeedCopy-->
Wenn vhost_net noch nicht läuft, geben Sie den folgenden Befehl ein, um es auszuführen:
modprobe vhost\_net
<!--NeedCopy-->