Citrix ADC VPX auf VMware ESX, Linux KVM和Citrix hypervisor
Die Leistung von Citrix ADC VPX hängt stark vom Hypervisor, den zugewiesenen systemresource und den hostconfig figationen ab. Um Die gewünschte Leistung zu erzielen, befolgen Sie zunächst Die Empfehlungen im VPX- datenblatt and optimieren Sie danthilfe in diesem文档enthaltenen最佳实践weiter。
Citrix ADC VPX-Instanz auf VMware esx - hypervisor
Dieser Abschnitt enthält Details zu konfigurierbaren Optionen und einstein sowie andere Vorschläge, mit denen Sie eine optimale Leistung der Citrix ADC VPX-Instanz auf VMware ESX-Hypervisoren erzielen können。
- ESX-Hosts配置auf
- Citrix ADC VPX mit E1000-Netzwerkschnittstellen
- Citrix ADC VPX mit VMXNET3-Netzwerkschnittstellen
- Citrix ADC VPX mit SR-IOV- und PCI pass - netzwerkschnittstellen
ESX-Hosts配置auf
Befolgen Sie diese Empfehlungen, um eine hohe Leistung für VPX mit E1000-, VMXNET3-, SR-IOV- und PCI-Passthrough-Netzwerkschnittstellen zu erzielen:
- ESX-Host bereitgestellten virtuellen cpu (vcpu) muss kleiner oder gleich der Gesamtzahl der physischen cpu (pcpu) auf dem ESX-Host sein。
Affinität und CPU-Affinität für ungleichmäßigen Speicherzugriff (NUMA) müssen festgelegt werden,该死的ESX-Host gute Ergebnisse erzielt。
- Um die NUMA-Affinität eines vnic zu ermitteln, melden Sie siich lokal oder remote bem Host an und geben Sie Folgendes in:
# vish -e get /net/pNics/vmnic7/properties | grep NUMA Device NUMA Node: 0
- 信息zum Festlegen der NUMA- und vCPU-Affinität für eine VM find Sie in derVMware-Dokumentation
Citrix ADC VPX mit E1000-Netzwerkschnittstellen
VMware ESX-Host vor台:
- Erstellen Sie auf dem VMware ESX-Host zwei vNICs aus einem pNIC vSwitch。mehere vNICs erstellen mehere Rx-Threads im ESX-Host。死亡erhöht den Rx-Durchsatz der pNIC-Schnittstelle。
- Aktivieren Sie VLANs auf der vSwitch-Portgruppenebene für jede von Ihnen erstellte vNIC。
- Um den vNIC-Übertragungsdurchsatz (Tx) zu erhöhen, verwenden Sie einen separaten Tx- thread im ESX-Host pro vNIC。Verwenden Sie den folgenden ESX-Befehl:
Für ESX 5.5版本:
esxcli系统设置高级设置-o /Net/NetTxWorldlet -i
Für ESX ab 6.0版本:
esxcli system settings advanced set -o /Net/NetVMTxType -i 1
Um den vNIC Tx-Durchsatz weiter zu erhöhen, verwenden Sie einen separaten Tx-Vervollständigungs-Thread und Rx-Threads pro Gerät (NIC) -Warteschlange。Verwenden Sie den folgenden ESX-Befehl:
esxcli system settings advanced set -o /Net/NetNetqRxQueueFeatPairEnable -i 0
Hinweis:
VMware ESX-Host neu starten, um die aktualisierten einstein ungen zu übernehmen。
Zwei vNICs pro pNIC-Bereitstellung
Im Folgenden finden Sie ein Beispiel für拓扑和配置sbefehle für das Bereitstellungsmodell mitzwei vNICs pro pNIC, das eine bessere Netzwerkleistung biet。
Citrix ADC VPX beispielconfiguration:
产品名称:Beispieltopologie gezeigte beitstellung zu erreichen, führen Sie die folgende配置auf der Citrix ADC VPX-Instanz durch:
Binden Sie auf Clientseite das SNIP (1.1.1.2) an die Netzwerkschnittstelle 1/1 und aktivieren Sie den vlan - tag - mode。
-ifnum 1/1 -tagged绑定vlan 2 -IPAddress 1.1.1.2 255.255.255.0
Netzwerkschnittstelle 1/1 und aktivieren Sie den VLAN-Tag-Modus (2.2.2.2)
绑定vlan 3 -ifnum 1/2 -tagged绑定vlan 3 -IPAddress 2.2.2.2 255.255.255.0
Fügen Sie einen virtuellen HTTP-Server (1.1.1.100) hinzu und bind Sie ihn an einen Dienst(2.2.2.100)。
add lb vserver v1 HTTP 1.1.1.100 80 -persistenceType NONE -Listenpolicy无-cltTimeout 180 add service s1 2.2.2.100 HTTP 80 -gslb NONE -maxClient 0 -maxReq 0 -cip DISABLED -usip NO -useproxyport YES -sp ON -cltTimeout 180 -svrTimeout 360 -CKA NO -TCPB NO -CMP NO bind lb vserver v1 s1
Hinweis:
Stellen Sie sicher, dass Sie die folgenden beiden Einträge in die Routentabelle aufnehmen:
- 1.1.1.0/24 Subnetz mit网关,das auf SNIP zeigt 1.1.1.2
- 2.2.2.0/24 Subnetz mit网关,das auf SNIP zeigt 2.2.2.2
Citrix ADC VPX mit VMXNET3-Netzwerkschnittstellen
Um eine hohe Leistung für VPX mit VMXNET3-Netzwerkschnittstellen zu erzielen, nehmen Sie die folgenden einstein auf dem VMware ESX-Host vor:
- Erstellen Sie zwei vNICs aus einem pNIC vSwitch。mehere vNICs erstellen mehere Rx-Threads im ESX-Host。死亡erhöht den Rx-Durchsatz der pNIC-Schnittstelle。
- Aktivieren Sie VLANs auf der vSwitch-Portgruppenebene für jede von Ihnen erstellte vNIC。
- Um den vNIC-Übertragungsdurchsatz (Tx) zu erhöhen, verwenden Sie einen separaten Tx- thread im ESX-Host pro vNIC。Verwenden Sie die folgenden ESX-Befehle:
- Für ESX 5.5版本:
esxcli系统设置高级设置-o /Net/NetTxWorldlet -i
- Für ESX ab 6.0版本:
esxcli system settings advanced set -o /Net/NetVMTxType -i 1
Führen Sie auf dem VMware ESX-Host die folgende configuration durch:
- Erstellen Sie auf dem VMware ESX-Host zwei vNICs aus einem pNIC vSwitch。mehere vNICs erstellen mehere Tx- und Rx-Threads im ESX-Host。死亡erhöht den Tx- und Rx-Durchsatz der pNIC-Schnittstelle。
- Aktivieren Sie VLANs auf der vSwitch-Portgruppenebene für jede von Ihnen erstellte vNIC。
Um den Tx-Durchsatz einer vNIC zu erhöhen, verwenden Sie einen separaten Tx-Vervollständigungs-Thread und Rx-Threads pro Gerät (NIC) -Warteschlange。Verwenden Sie den folgenden Befehl:
esxcli system settings advanced set -o /Net/NetNetqRxQueueFeatPairEnable -i 0
配置虚拟机für die Verwendung eines Übertragungs-Threads pro vNIC, indem Sie der configuration der VM die folgende Einstellung hinzufügen:
ethernetX。ctxPerDev = "1"
Weitere Informationen找到你最佳实践für die Leistungsoptimierung von Telekommunikations- und nfv - vSphere中的工作负载
Hinweis:
VMware ESX-Host neu starten, um die aktualisierten einstein ungen zu übernehmen。
Sie können VMXNET3 als Bereitstellung mitzwei vNICs pro pNICkonfigurieren。Weitere Informationen找到你Zwei vNICs pro pNIC-Bereitstellung.
Citrix ADC VPX mit SR-IOV- und PCI pass - netzwerkschnittstellen
Leistung für VPX mit SR-IOV- und PCI-Passthrough-Netzwerkschnittstellen zu erzielen, siheESX-Hosts配置auf.
Citrix ADC VPX-Instanz auf linux - kvm平台
Dieser Abschnitt enthält详细信息配置urierbaren Optionen和einstein sowie andere Vorschläge, mit denen Sie eine optimale Leistung der Citrix ADC VPX-Instanz auf der linux - kvm - platform erzielen können。
- Leistungseinstellungen毛皮KVM
- Citrix ADC VPX mit PV-Netzwerkschnittstellen
- Citrix ADC VPX mit SR-IOV und Fortville PCIe Passthrough-Netzwerkschnittstellen
Leistungseinstellungen毛皮KVM
Nehmen Sie die folgenden einstein auf dem kvm -主持人:
芬登Sie die NUMA-Domäne der NIC mit demlstopo
Befehl:
斯特伦Sie sicher, dass der Speicher für den VPX und die CPU an derselben Stelle angelheftet ist。在der folgenden Ausgabe ist死10g nic“ens2”an die NUMA-Domäne #1 gebunden。
Weisen Sie den VPX-Speicher aus der NUMA-Domäne zu。
Der使用
Befehl gibt die NUMA-Domäne an, von der Speicher zugewiesen word。在der folgenden Ausgabe werden etwa 10 GB RAM vom NUMA-Knoten #0 zugewiesen。
Gehen Sie folgendermaßen vor, um die NUMA-Knotenzuordnung zu ändern。
XML des VPX auf dem Host。
/etc/libvirt/qemu/ < VPX_name > . xml < !——NeedCopy >
Fügen Sie das folgende Tag hinzu:
NUMA域名。 Fahren Sie den VPX herunter。
Führen Sie den folgenden Befehl aus:
定义/etc/libvirt/qemu/
.xml Dieser Befehl aktualisiert die配置信息für die VM mit den NUMA-Knotenzuordnungen。
Schalten Sie den VPX ein。Überprüfen Sie dann die
使用硬件
Befehlsausgabe auf dem Host, um die aktualisierten Speicherzuweisungen für den VPX zu sehen。
引脚vCPUs von VPX一个物理机Kerne。
Um die vCPU zu pCPU-Zuordnungen einer VPX anzuzeigen, geben Sie den folgenden Befehl ein
virsh vcpupin
vcpu 0-4 werden physikalischen Kernen 8-11 zugeordnet。
Um die aktuelle pCPU-Nutzung anzuzeigen, geben Sie den folgenden Befehl ein:
mpstat -P ALL 5
在柴油机Ausgabe ist 8管理cpu和9-11 paket引擎。
Um die vCPU auf pcpu - pin zu ändern, gibt es zwei Möglichkeiten。
Ändern Sie es zur Laufzeit, nachdem der VPX mit dem folgenden Befehl hochgefahren wurde:
virsh vcpupin
virsh vcpupin NetScaler-VPX-XML 0 8 virsh vcpupin NetScaler-VPX-XML 1 9 virsh vcpupin NetScaler-VPX-XML 2 10 virsh vcpupin NetScaler-VPX-XML 3 11 嗯统计Änderungen an der VPX vorzunehmen, bearbeiten Sie die
. xml
Datei wie zuvor mit den folgenden Tags:xml datei des VPX auf dem Host
/etc/libvirt/qemu/ < VPX_name > . xml < !——NeedCopy >
Fügen Sie das folgende Tag hinzu:
4 Fahren Sie den VPX herunter。
Aktualisieren Sie die配置信息für die VM mit den NUMA-Knotenzuordnungen mithilfe des folgenden Befehls:
定义/etc/libvirt/qemu/
.xml Schalten Sie den VPX ein。Überprüfen Sie dann die
virsh vcpupin
Befehlsausgabe auf dem Host, um das aktualisierte cpu - pin zu sehen。
Eliminieren您Host-Interrupt-Overhead。
Erkennt vm_exit mithilife des
kvm_stat
Befehls。Hypervisor-Ebene werden Host-Interrupts denselben PCPUs zugeordnet, Auf denen die vCPUs des VPX angelheftet sind。Dies kann dazu führen, dass vCPUs auf dem VPX regelmäßig rausgeschmissen werden。
Verwenden您窝
kvm_stat
Befehl, um die vm - exit zu finden, die von VMs durchgeführt wurden, auf denen der Host ausgeführt wird[root@localhost ~]# kvm_stat -1 | grep EXTERNAL kvm_exit(EXTERNAL_INTERRUPT) 1728349 27738 [root@localhost ~]#
Ein höherer Wert in der Größenordnung von 1+M weist auf Ein问题hin。
Wenn eine einzelne VM vorhanden ist, beträgt der erwartete Wert 30-100 K。Alles andere kann darauf hinweisen, dass ein oder mehere Host-Interrupt-Vektoren derselben pCPU zugednet sind。
Erkennen Sie Host-Interrupts和migrieren Sie Host-Interrupts。
您要是窝
连接
Befehl für die Datei " /proc/interrupts " ausführen, werden allle Host-Interrupt-Zuordnungen angezeigt。Wenn ein oder mehere akirqs derselben pCPU zugeordnet werden, erhöht siich der entsprechende Zähler。Ihres Citrix ADC VPX überschneiden, auf ungenutzte PCPUs:
echo 0000000f > /proc/irq/55/smp_affinity 0000000f - - >位图,lbs表示IRQ 55只能调度在0 - 3
Deaktivieren Sie das IRQ Guthaben
irq - balance daemon, damit im laufenden Betrieb keine Umschuldung erfolgt。
service irqbalance stop service irqbalance show -检查irqbalance start -如果需要启用
斯特伦,你好,你好
kvm_stat
Befehl ausführen,嗯sicherzustellen, dass es nicht viele Zähler gibt。
Citrix ADC VPX mit PV-Netzwerkschnittstellen
Sie können Para-Virtualization (PV), SR-IOV和pcie - passthrough - netzwerkschnittstellalsZwei vNICs pro pNIC-Bereitstellungkonfigurieren。Weitere Informationen找到你Zwei vNICs pro pNIC-Bereitstellung.
Gehen Sie folgendermaßen vor, um eine optimale Leistung von PV (virtio) -Schnittstellen zu erzielen:
- 标识NUMA-Domäne, pci - steckplatz /NIC gebunden ist的模具。
- Der Speicher und die vCPU für den VPX müssen an dieselbe NUMA-Domäne angeheftet sein。
- Der Vhost-Thread在derselben NUMA-Domäne gebunden sein中创建一个cpu。
Host-Threads an die entsprechenden cpu:
Sobald der Verkehr gestartet wurde, führen Sie den
前
Befehl auf dem Host aus。- 识别菲方Sie die Affinität des virtuellen host - prozess (benannt als .
vhost——< pid-of-qemu >
). Binden Sie die vHost-Prozesse dem folgenden Befehl an die zuvor identifizierten physischen Kerne在NUMA-Domäne:
Taskset -pc
Beispiel:
Taskset -pc 12 29838
Die Prozessorkerne, Die der NUMA-Domäne entsprechen, können mit dem folgenden Befehl identifiziert werden:
(root@localhost ~) # virsh能力| grep cpu < cpu > < / cpu > < cpu num = ' 8 ' > < cpu id = ' 0 ' socket_id = ' 0 ' core_id = ' 0 '兄弟姐妹= ' 0 ' / > < cpu id = ' 1 ' socket_id = ' 0 ' core_id =兄弟姐妹' 1 ' = ' 1 ' / > < cpu id = ' 2 ' socket_id = ' 0 ' core_id = ' 2 '兄弟姐妹= ' 2 ' / > < cpu id =“3”socket_id = ' 0 ' core_id = 3的兄弟姐妹= ' 3 ' / > < cpu id =“4”socket_id = ' 0 ' core_id =‘4’兄弟姐妹= ' 4 ' / > < cpu id =“5”socket_id = ' 0 ' core_id =‘5’的兄弟姐妹= ' 5 ' / > < cpu id =“6”socket_id = ' 0 ' core_id =“6”兄弟姐妹= ' 6 ' / > < cpu id =“7”socket_id = ' 0 ' core_id =“7”兄弟姐妹= ' 7 ' / > < / cpu > < cpu num = ' 8 ' > < cpu id =“8”socket_id = ' 1 ' core_id = ' 0 '兄弟姐妹= ' 8 ' / > < cpu id =“9”socket_id = ' 1 ' core_id = ' 1 '兄弟姐妹= ' 9 ' / > < cpu id =“10”socket_id = ' 1 ' core_id = ' 2 '兄弟姐妹=“10”/ > < cpu id =“11”socket_id = ' 1 ' core_id = 3的兄弟姐妹= ' 11 ' / > < cpu id =“12”socket_id = ' 1 ' core_id =‘4’兄弟姐妹=“12”/ > < cpu id =“13”socket_id = ' 1 ' core_id =‘5’的兄弟姐妹=“13”/ > < cpu id =“14”socket_id = ' 1 ' core_id =“6”兄弟姐妹=“14”/ > < cpu id =“15”socket_id = ' 1 ' core_id =“7”兄弟姐妹= ' 15 ' / > < / cpu > < cpuselection / >< cpuselection / > < !——NeedCopy >
宾登·西登·克恩:
- 证明我们的身体是健康的,我们的身体是健康的läuft。Weitere Informationen finden Sie in der vorhergehenden Ausgabe。
Binden Sie den QEMU-Prozess mit dem folgenden Befehl an dieselben physikalischen Kerne,一个die Sie die vCPUs bind:
Taskset -pc 8-11 29824
Citrix ADC VPX mit SR-IOV und Fortville PCIe Passthrough-Netzwerkschnittstellen
Gehen Sie folgendermaßen vor, um eine optimale Leistung der SR-IOV- und Fortville PCIe-Passthrough-Netzwerkschnittstellen zu erzielen:
- 标识NUMA-Domäne, pci - steckplatz /NIC gebunden ist的模具。
- Der Speicher und die vCPU für den VPX müssen an dieselbe NUMA-Domäne angeheftet sein。
Beispiel für eine VPX-XML-Datei für vCPU und Speicher-Pinning für Linux KVM:
<域类型=“kvm”> <名称> NetScaler-VPX < /名称> < uuid > 138 f7782 - 1 - cd3 - 484 b - 8 b6d - 7604 f35b14f4 < / uuid > <内存单元=“简约”> 8097152 < /内存> < currentMemory单位=“简约”> 8097152 < / currentMemory > <个vcpu位置=“静态”> 4 < /个vcpu > < cputune > < vcpupin个vcpu = ' 0 ' cpuset = ' 8 ' / > < vcpupin个vcpu = ' 1 ' cpuset = ' 9 ' / > < vcpupin个vcpu = ' 2 ' cpuset =“10”/ > < vcpupin个vcpu = ' 3 ' cpuset = ' 11 ' / > < / cputune > < numatune > <内存模式=“严格”节点集= ' 1 ' / > < / numatune > < /域> < !——NeedCopy >
Citrix ADC VPX-Instanz auf Citrix hypervisor
Dieser Abschnitt enthält详细信息zu konfigurereraren Optionen und insteellungen sowie andere Vorschläge, mit denen Sie eine optimale Leistung der Citrix ADC VPX-Instanz auf Citrix hypervisor erzielen können。
- Leistungseinstellungen für Citrix hypervisor
- Citrix ADC VPX mit SR-IOV-Netzwerkschnittstellen
- Citrix ADC VPX mit paravirtualisierten Schnittstellen
Leistungseinstellungen für Citrix hypervisor
Finden Sie die NUMA-Domäne der NIC mit dem Befehl " xl ":
Xl info -n
引脚vCPUs von VPX一个物理机Kerne。
xl vCPU -pin < netscaler虚拟机名称> <物理CPU id>
Überprüfen Sie die Bindung von vCPUs。
xl vcpu-list < !——NeedCopy >
伟森思思ADC VMs mehr als 8个vcpu zu。
Führen Sie zum konfigureren von mehr als 8个vcpu die folgenden Befehle von der Citrix Hypervisor-Konsole aus:
xe vm-param-set uuid=your_vms_uuid VCPUs-max=16 xe vm-param-set uuid=your_vms_uuid VCPUs-at-startup=16
Citrix ADC VPX mit SR-IOV-Netzwerkschnittstellen
Gehen Sie folgendermaßen vor, um eine optimale Leistung der SR-IOV-Netzwerkschnittstellen zu erzielen:
- 标识符Sie die NUMA-Domäne, pci - steckplatz order die bunden ist。
- 斯特肯Sie den Speicher und die vCPU für den VPX an diesel NUMA-Domäne an。
- Binden Sie die Domain-0 vCPU an die verbleibende CPU
Citrix ADC VPX mit paravirtualisierten Schnittstellen
Für eine optimale Leistung werden zwei vNIC pro pNIC和eine vNIC pro pNIC- configuration empfohlen, wie in anderen PV-Umgebungen。
Gehen Sie folgendermaßen vor, um eine optimale Leistung paraviralisierter (Netfront) Schnittstellen zu erzielen:
- 标识符Sie die NUMA-Domäne, pci - steckplatz order die bunden ist。
- 斯特肯Sie den Speicher und die vCPU für den VPX an diesel NUMA-Domäne an。
- Binden Sie die Domain-0 vCPU an die verbleibende CPU derselben NUMA-Domäne。
- 引脚主机Rx/ tx线程vNIC一个Domain-0 vcpu。
Domain-0 vcpu的主机线程:
- 苏晨Sie die Xen-ID des VPX mithilife des
xl列表
Befehls auf der Citrix Hypervisor Hostshell。 mithilife des folgenden Befehls:
ps -ax | grep vif
我是福尔根登Beispiel zeigen diese Werte:
- vif5.0- Die Threads für Die erste Schnittstelle, Die VPX in XenCenter zugewiesen wurde (Verwaltungsschnittstelle)。
- vif5.1-模螺纹für模zweite Schnittstelle,模VPX usw。zugewiesen信德。
线程mit dem folgenden Befehl -0 vcpu和:
Taskset -pc
Beispiel:
Taskset -pc 1 29189