-
Déployer une instance de Citrix ADC VPX sur AWS
-
Optimisation des performances Citrix ADC VPX sur VMware ESX, Linux KVM et Citrix Hypervisors
-
Installer une instance Citrix ADC VPX sur le cloud VMware sur AWS
-
Installer une instance Citrix ADC VPX sur les serveurs Microsoft Hyper-V
-
Installer une instance Citrix ADC VPX sur la plate-forme Linux-KVM
-
Provisionnement de l'appliance virtuelle Citrix ADC à l'aide d'OpenStack
-
Provisionnement de l'appliance virtuelle Citrix ADC à l'aide du gestionnaire de machines virtuelles
-
Configuration des appliances virtuelles Citrix ADC pour utiliser l'interface réseau SR-IOV
-
Configuration des appliances virtuelles Citrix ADC pour utiliser l'interface réseau PCI Passthrough
-
Provisionnement de l'appliance virtuelle Citrix ADC à l'aide du programme virsh
-
Provisionnement de l'appliance virtuelle Citrix ADC avec SR-IOV, sur OpenStack
-
Configuration d'une instance Citrix ADC VPX sur KVM pour utiliser les interfaces hôtes OVS DPDK
-
Deploy a Citrix ADC VPX instance on AWS
-
Serveurs d'équilibrage de charge dans différentes zones de disponibilité
-
Déployer une paire HA VPX dans la même zone de disponibilité AWS
-
Haute disponibilité dans différentes zones de disponibilité AWS
-
Déployez une paire VPX haute disponibilité avec des adresses IP privées dans différentes zones AWS
-
Configurer une instance Citrix ADC VPX pour utiliser l'interface réseau SR-IOV
-
Configurer une instance Citrix ADC VPX pour utiliser la mise en réseau améliorée avec AWS ENA
-
Déployer une instance de Citrix ADC VPX sur Microsoft Azure
-
Architecture réseau pour les instances Citrix ADC VPX sur Microsoft Azure
-
Configurer plusieurs adresses IP pour une instance autonome Citrix ADC VPX
-
Configurer une configuration haute disponibilité avec plusieurs adresses IP et cartes réseau
-
Configurer une instance Citrix ADC VPX pour utiliser la mise en réseau accélérée Azure
-
Configurer les nœuds HA-INC à l'aide du modèle Citrix haute disponibilité avec Azure ILB
-
Installer une instance Citrix ADC VPX sur la solution Azure VMware
-
Ajouter des paramètres de mise à l'échelle automatique Azure
-
Configurer GSLB sur une configuration haute disponibilité active en veille
-
Configurer les pools d'adresses (IIP) pour un dispositif NetScaler Gateway
-
Scripts PowerShell supplémentaires pour le déploiement Azure
-
Déployer une instance Citrix ADC VPX sur Google Cloud Platform
-
Automatiser le déploiement et les configurations de Citrix ADC
-
Solutions pour les fournisseurs de services de télécommunication
-
Trafic du plan de contrôle de l'équilibrage de charge basé sur les protocoles Diameter, SIP et SMPP
-
Utilisation de la bande passante avec la fonctionnalité de redirection du cache
-
-
Authentification, autorisation et audit du trafic des applications
-
Fonctionnement de l'authentification, de l'autorisation et de l'audit
-
Composants de base de la configuration de l'authentification, de l'autorisation et de l'audit
-
-
Autorisation de l'accès des utilisateurs aux ressources de l'application
-
Citrix ADC en tant que proxy Active Directory Federation Service
-
NetScaler Gateway sur site en tant que fournisseur d'identité vers Citrix Cloud
-
Prise en charge de la configuration de l'attribut de cookie SameSite
-
Résoudre les problèmes liés à l'authentification et à l'autorisation
-
-
-
-
Configuration de l'expression de stratégie avancée : mise en route
-
Expressions de stratégie avancées : utilisation des dates, des heures et des nombres
-
Expressions de stratégie avancées : analyse des données HTTP, TCP et UDP
-
Expressions de stratégie avancées : analyse des certificats SSL
-
Expressions de stratégie avancées : adresses IP et MAC, débit, ID VLAN
-
Expressions de stratégie avancées : fonctions d'analyse de flux
-
Référence des expressions - Expressions de stratégie avancées
-
Exemples récapitulatifs d'expressions et de stratégies de syntaxe par défaut
-
Tutoriel sur les exemples de stratégies syntaxiques par défaut pour la réécriture
-
Migration des règles Apache mod_rewrite vers la syntaxe par défaut
-
-
-
-
Vérifications de protection XML
-
Articles sur les alertes de signatures
-
-
Traduire l'adresse IP de destination d'une requête vers l'adresse IP d'origine
-
-
Prise en charge de la configuration Citrix ADC dans un cluster
-
-
-
Groupes de nœuds pour les configurations repérées et partiellement entrelacées
-
Désactivation de la direction sur le fond de panier du cluster
-
Suppression d'un nœud d'un cluster déployé à l'aide de l'agrégation de liens de cluster
-
Surveillance de la configuration du cluster à l'aide de la MIB SNMP avec lien SNMP
-
Surveillance des échecs de propagation des commandes dans un déploiement de cluster
-
Liaison d'interface VRRP dans un cluster actif à nœud unique
-
Scénarios de configuration et d'utilisation du cluster
-
Migration d'une configuration HA vers une configuration de cluster
-
Interfaces communes pour le client et le serveur et interfaces dédiées pour le fond de panier
-
Commutateur commun pour le client, le serveur et le fond de panier
-
Commutateur commun pour client et serveur et commutateur dédié pour fond de panier
-
Services de surveillance dans un cluster à l'aide de la surveillance des chemins
-
Opérations prises en charge sur des nœuds de cluster individuels
-
-
-
Configurer les enregistrements de ressources DNS
-
Créer des enregistrements MX pour un serveur d'échange de messagerie
-
Créer des enregistrements NS pour un serveur faisant autorité
-
Créer des enregistrements NAPTR pour le domaine des télécommunications
-
Créer des enregistrements PTR pour les adresses IPv4 et IPv6
-
Créer des enregistrements SOA pour les informations faisant autorité
-
Créer des enregistrements TXT pour contenir du texte descriptif
-
Configurer Citrix ADC en tant que résolveur de stub non validant sensible à la sécurité
-
Prise en charge des trames Jumbo pour le DNS pour gérer les réponses de grande taille
-
Configurer la mise en cache négative des enregistrements DNS
-
-
Équilibrage de charge de serveur global
-
Configurez les entités GSLB individuellement
-
Synchronisation de la configuration dans une configuration GSLB
-
Cas d'utilisation : déploiement d'un groupe de services Autoscale basé sur l'adresse IP
-
-
Remplacer le comportement de proximité statique en configurant les emplacements préférés
-
Configuration de la sélection des services GSLB à l'aide du changement de contenu
-
Configurer GSLB pour les requêtes DNS avec des enregistrements NAPTR
-
Exemple de configuration parent-enfant complète à l'aide du protocole d'échange de métriques
-
-
Équilibrer la charge du serveur virtuel et des états de service
-
Protection d'une configuration d'équilibrage de charge contre les défaillances
-
-
Configuration des serveurs virtuels d'équilibrage de charge sans session
-
Réécriture des ports et des protocoles pour la redirection HTTP
-
Insérer l'adresse IP et le port d'un serveur virtuel dans l'en-tête de requête
-
Utiliser une adresse IP source spécifiée pour la communication principale
-
Définir une valeur de délai d'expiration pour les connexions client inactives
-
Utiliser un port source d'une plage de ports spécifiée pour les communications en arrière-plan
-
Configurer la persistance de l'adresse IP source pour la communication principale
-
-
Paramètres d'équilibrage de charge avancés
-
Protégez les applications sur les serveurs protégés contre les pics de trafic
-
Activer le nettoyage des connexions de serveur virtuel et de service
-
Activer ou désactiver la session de persistance sur les services TROFS
-
Activer la vérification de l'état TCP externe pour les serveurs virtuels UDP
-
Maintenir la connexion client pour plusieurs demandes client
-
Utiliser l'adresse IP source du client lors de la connexion au serveur
-
Définissez une limite sur le nombre de demandes par connexion au serveur
-
Définir une valeur de seuil pour les moniteurs liés à un service
-
Définir une valeur de délai d'attente pour les connexions client inactives
-
Définir une valeur de délai d'attente pour les connexions de serveur inactives
-
Définir une limite sur l'utilisation de la bande passante par les clients
-
Conserver l'identificateur VLAN pour la transparence du VLAN
-
Configurer les moniteurs dans une configuration d'équilibrage de charge
-
Configurer l'équilibrage de charge pour les protocoles couramment utilisés
-
Cas d'utilisation 3 : configurer l'équilibrage de charge en mode de retour direct du serveur
-
Cas d'utilisation 4 : Configuration des serveurs LINUX en mode DSR
-
Cas d'utilisation 5 : configurer le mode DSR lors de l'utilisation de TOS
-
Cas d'utilisation 7 : Configurer l'équilibrage de charge en mode DSR à l'aide d'IP sur IP
-
Cas d'utilisation 8 : Configurer l'équilibrage de charge en mode à un bras
-
Cas d'utilisation 9 : Configurer l'équilibrage de charge en mode en ligne
-
Cas d'utilisation 10 : Équilibrage de charge des serveurs de systèmes de détection d'intrusion
-
Cas d'utilisation 11 : Isolation du trafic réseau à l'aide de stratégies d'écoute
-
Cas d'utilisation 12 : configurer Citrix Virtual Desktops pour l'équilibrage de charge
-
Cas d'utilisation 13 : Configuration de Citrix Virtual Apps pour l'équilibrage de charge
-
Cas d'utilisation 14 : Assistant ShareFile pour l'équilibrage de charge Citrix ShareFile
-
Cas d'utilisation 15 : configurer l'équilibrage de charge de couche 4 sur l'appliance Citrix ADC
-
-
-
Configuration pour générer le trafic de données Citrix ADC FreeBSD à partir d'une adresse SNIP
-
-
Déchargement et accélération SSL
-
Prise en charge du protocole TLSv1.3 tel que défini dans la RFC 8446
-
Suites de chiffrement disponibles sur les appliances Citrix ADC
-
Matrice de prise en charge des certificats de serveur sur l'appliance ADC
-
Prise en charge du module de sécurité matérielle Thales Luna Network
-
-
-
-
Authentification et autorisation pour les utilisateurs système
-
Configuration des utilisateurs, des groupes d'utilisateurs et des stratégies de commande
-
Réinitialisation du mot de passe administrateur par défaut (nsroot)
-
Configuration de l'authentification des utilisateurs externes
-
Authentification par clé SSH pour les administrateurs Citrix ADC
-
Authentification à deux facteurs pour les utilisateurs système
-
-
-
Points à prendre en compte pour une configuration haute disponibilité
-
Synchronisation des fichiers de configuration dans une configuration haute disponibilité
-
Restriction du trafic de synchronisation haute disponibilité vers un VLAN
-
Configuration de nœuds haute disponibilité dans différents sous-réseaux
-
Limitation des basculements causés par les moniteurs de routage en mode non INC
-
Gestion des messages de pulsation haute disponibilité sur une appliance Citrix ADC
-
Supprimer et remplacer un Citrix ADC dans une configuration haute disponibilité
-
This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已经过机器动态翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
이 콘텐츠는 동적으로 기계 번역되었습니다. 책임 부인
Este texto foi traduzido automaticamente. (Aviso legal)
Questo contenuto è stato tradotto dinamicamente con traduzione automatica.(Esclusione di responsabilità))
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.책임 부인
Este artigo foi traduzido automaticamente.(Aviso legal)
这篇文章已经过机器翻译.放弃
Questo articolo è stato tradotto automaticamente.(Esclusione di responsabilità))
Translation failed!
Optimize Citrix ADC VPX performance on VMware ESX, Linux KVM, and Citrix Hypervisors
The Citrix ADC VPX performance greatly varies depending on the hypervisor, allocated system resources, and the host configurations. To achieve the desired performance, first follow the recommendations in the VPX data sheet, and then further optimize it using the best practices provided in this document.
Citrix ADC VPX instance on VMware ESX hypervisors
This section contains details of configurable options and settings, and other suggestions that help you achieve optimal performance of Citrix ADC VPX instance on VMware ESX hypervisors.
- Recommended configuration on ESX hosts
- Citrix ADC VPX with E1000 network interfaces
- Citrix ADC VPX with VMXNET3 network interfaces
- Citrix ADC VPX with SR-IOV and PCI passthrough network interfaces
Recommended configuration on ESX hosts
To achieve high performance for VPX with E1000, VMXNET3, SR-IOV, and PCI passthrough network interfaces, follow these recommendations:
- The total number of virtual CPUs (vCPUs) provisioned on the ESX host must be less than or equal to the total number of physical CPUs (pCPUs) on the ESX host.
-
Non-uniform Memory Access (NUMA) affinity and CPU affinity must be set for the ESX host to achieve good results.
– To find the NUMA affinity of a Vmnic, log in to the host locally or remotely, and type:
#vsish -e get /net/pNics/vmnic7/properties | grep NUMA Device NUMA Node: 0 <!--NeedCopy-->
- To set NUMA and vCPU affinity for a VM, see VMware documentation.
Citrix ADC VPX with E1000 network interfaces
Perform the following settings on the VMware ESX host:
- On the VMware ESX host, create two vNICs from one pNIC vSwitch. Multiple vNICs create multiple Rx threads in the ESX host. This increases the Rx throughput of the pNIC interface.
- Enable VLANs on the vSwitch port group level for each vNIC that you have created.
- To increase vNIC transmit (Tx) throughput, use a separate Tx thread in the ESX host per vNIC. Use the following ESX command:
-
For ESX version 5.5:
esxcli system settings advanced set –o /Net/NetTxWorldlet –i <!--NeedCopy-->
-
For ESX version 6.0 onwards:
esxcli system settings advanced set -o /Net/NetVMTxType –i 1 <!--NeedCopy-->
-
-
To further increase the vNIC Tx throughput, use a separate Tx completion thread and Rx threads per device (NIC) queue. Use the following ESX command:
esxcli system settings advanced set -o /Net/NetNetqRxQueueFeatPairEnable -i 0 <!--NeedCopy-->
Note:
Make sure that you reboot the VMware ESX host to apply the updated settings.
Two vNICs per pNIC deployment
The following is a sample topology and configuration commands for the Two vNICs per pNIC model of deployment that delivers better network performance.
Citrix ADC VPX sample configuration:
To achieve the deployment shown in the preceding sample topology, perform the following configuration on the Citrix ADC VPX instance:
-
On the client side, bind the SNIP (1.1.1.2) to network interface 1/1 and enable the VLAN tag mode.
bind vlan 2 -ifnum 1/1 –tagged bind vlan 2 -IPAddress 1.1.1.2 255.255.255.0 <!--NeedCopy-->
-
On the server side, bind the SNIP (2.2.2.2) to network interface 1/1 and enable the VLAN tag mode.
bind vlan 3 -ifnum 1/2 –tagged bind vlan 3 -IPAddress 2.2.2.2 255.255.255.0 <!--NeedCopy-->
-
Add an HTTP virtual server (1.1.1.100) and bind it to a service (2.2.2.100).
add lb vserver v1 HTTP 1.1.1.100 80 -persistenceType NONE -Listenpolicy None -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 <!--NeedCopy-->
Note:
Make sure that you include the following two entries in the route table:
- 1.1.1.0/24 subnet with gateway pointing to SNIP 1.1.1.2
- 2.2.2.0/24 subnet with gateway pointing to SNIP 2.2.2.2
Citrix ADC VPX with VMXNET3 network interfaces
To achieve high performance for VPX with VMXNET3 network interfaces, do the following settings on the VMware ESX host:
- Create two vNICs from one pNIC vSwitch. Multiple vNICs create multiple Rx threads in the ESX host. This increases the Rx throughput of the pNIC interface.
- Enable VLANs on the vSwitch port group level for each vNIC that you have created.
- To increase vNIC transmit (Tx) throughput, use a separate Tx thread in the ESX host per vNIC. Use the following ESX commands:
- For ESX version 5.5:
esxcli system settings advanced set –o /Net/NetTxWorldlet –i <!--NeedCopy-->
- For ESX version 6.0 onwards:
esxcli system settings advanced set -o /Net/NetVMTxType –i 1 <!--NeedCopy-->
On the VMware ESX host, perform the following configuration:
- On the VMware ESX host, create two vNICs from 1 pNIC vSwitch. Multiple vNICs create multiple Tx and Rx threads in the ESX host. This increases the Tx and Rx throughput of the pNIC interface.
- Enable VLANs on the vSwitch port group level for each vNIC that you have created.
-
To increase Tx throughput of a vNIC, use a separate Tx completion thread and Rx threads per device (NIC) queue. Use the following command:
esxcli system settings advanced set -o /Net/NetNetqRxQueueFeatPairEnable -i 0 <!--NeedCopy-->
-
Configure a VM to use one transmit thread per vNIC, by adding the following setting to the VM’s configuration:
ethernetX.ctxPerDev = "1" <!--NeedCopy-->
For more information, see Best Practices for Performance Tuning of Telco and NFV Workloads in vSphere
Note:
Make sure that you reboot the VMware ESX host to apply the updated settings.
You can configure VMXNET3 as a Two vNICs per pNIC deployment. For more information, see Two vNICs per pNIC deployment.
Citrix ADC VPX with SR-IOV and PCI passthrough network interfaces
To achieve high performance for VPX with SR-IOV and PCI passthrough network interfaces, see Recommended configuration on ESX hosts.
Citrix ADC VPX instance on Linux-KVM platform
This section contains details of configurable options and settings, and other suggestions that help you achieve optimal performance of Citrix ADC VPX instance on Linux-KVM platform.
- Performance settings for KVM
- Citrix ADC VPX with PV network interfaces
- Citrix ADC VPX with SR-IOV and Fortville PCIe passthrough network interfaces
Performance settings for KVM
Perform the following settings on the KVM host:
Find the NUMA domain of the NIC using the lstopo
command:
Make sure that memory for the VPX and the CPU is pinned to the same location. In the following output, the 10G NIC “ens2” is tied to NUMA domain #1.
Allocate the VPX memory from the NUMA domain.
The numactl
command indicates the NUMA domain from which the memory is allocated. In the following output, around 10 GB RAM is allocated from NUMA node #0.
To change the NUMA node mapping, follow these steps.
-
Edit the .xml of the VPX on the host.
/etc/libvirt/qemu/<VPX_name>.xml <!--NeedCopy-->
-
Add the following tag:
<numatune> <memory mode="strict" nodeset="1"/> This is the NUMA domain name </numatune> <!--NeedCopy-->
-
Shut down the VPX.
-
Run the following command:
virsh define /etc/libvirt/qemu/<VPX_name>.xml <!--NeedCopy-->
This command updates the configuration information for the VM with the NUMA node mappings.
-
Power on the VPX. Then check the
numactl –hardware
command output on the host to see the updated memory allocations for the VPX.
Pin vCPUs of VPX to physical cores.
-
To view the vCPU to pCPU mappings of a VPX, type the following command
virsh vcpupin <VPX name> <!--NeedCopy-->
The vCPUs 0–4 are mapped to physical cores 8–11.
-
To view the current pCPU usage, type the following command:
mpstat -P ALL 5 <!--NeedCopy-->
In this output, 8 is management CPU, and 9–11 are packet engines.
-
To change the vCPU to pCPU pinning, there are two options.
-
Change it at runtime after the VPX boots up using the following command:
virsh vcpupin <VPX name> <vCPU id> <pCPU number> 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 <!--NeedCopy-->
-
To make static changes to the VPX, edit the
.xml
file as before with the following tags:-
Edit the .xml file of the VPX on the host
/etc/libvirt/qemu/<VPX_name>.xml <!--NeedCopy-->
-
Add the following tag:
<vcpu placement='static' cpuset='8-11'>4</vcpu> <cputune> <vcpupin vcpu='0' cpuset='8'/> <vcpupin vcpu='1' cpuset='9'/> <vcpupin vcpu='2' cpuset='10'/> <vcpupin vcpu='3' cpuset='11'/> </cputune> <!--NeedCopy-->
-
Shut down the VPX.
-
Update the configuration information for the VM with the NUMA node mappings using the following command:
virsh define /etc/libvirt/qemu/ <VPX_name>.xml <!--NeedCopy-->
-
Power on the VPX. Then check the
virsh vcpupin <VPX name>
command output on the host to see the updated CPU pinning.
-
-
Eliminate host interrupt overhead.
-
Detect VM_EXITS using the
kvm_stat
command.At the hypervisor level, host interrupts are mapped to the same pCPUs on which the vCPUs of the VPX are pinned. This might cause vCPUs on the VPX to get kicked out periodically.
To find the VM exits done by VMs running the host, use the
kvm_stat
command.[root@localhost ~]# kvm_stat -1 | grep EXTERNAL kvm_exit(EXTERNAL_INTERRUPT) 1728349 27738 [root@localhost ~]# <!--NeedCopy-->
A higher value in the order of 1+M indicates an issue.
If a single VM is present, the expected value is 30–100 K. Anything more than that can indicate that there are one or more host interrupt vectors mapped to the same pCPU.
-
Detect host interrupts and migrate host interrupts.
When you run the
concatenate
command for the “/proc/interrupts” file, it displays all the host interrupt mappings. If one or more active IRQs map to the same pCPU, its corresponding counter increments.Move any interrupts that overlap with your Citrix ADC VPX’s pCPUs to unused pCPUs:
echo 0000000f > /proc/irq/55/smp_affinity 0000000f - - > it is a bitmap, LSBs indicates that IRQ 55 can only be scheduled on pCPUs 0 – 3 <!--NeedCopy-->
-
Disable IRQ balance.
Disable IRQ balance daemon, so that no rescheduling happens on the fly.
service irqbalance stop service irqbalance show - To check the status service irqbalance start - Enable if needed <!--NeedCopy-->
Make sure you run the
kvm_stat
command to ensure that there are not many counters.
Citrix ADC VPX with PV network interfaces
You can configure para-virtualization (PV), SR-IOV, and PCIe passthrough network interfaces as a Two vNICs per pNIC deployment. For more information, see Two vNICs per pNIC deployment.
For optimal performance of PV (virtio) interfaces, follow these steps:
- Identify the NUMA domain to which the PCIe slot/NIC is tied to.
- The Memory and vCPU for the VPX must be pinned to the same NUMA domain.
- Vhost thread must be bound to the CPUs in the same NUMA domain.
Bind the virtual host threads to the corresponding CPUs:
-
Once the traffic is started, run the
top
command on the host. - Identify the virtual host process (named as
vhost-<pid-of-qemu>
) affinity. -
Bind the vHost processes to the physical cores in the NUMA domain identified earlier using the following command:
taskset –pc <core-id> <process-id> <!--NeedCopy-->
Example:
taskset –pc 12 29838 <!--NeedCopy-->
-
The processor cores corresponding to the NUMA domain can be identified with the following command:
[root@localhost ~]# virsh capabilities | grep cpu <cpu> </cpu> <cpus num='8'> <cpu id='0' socket_id='0' core_id='0' siblings='0'/> <cpu id='1' socket_id='0' core_id='1' siblings='1'/> <cpu id='2' socket_id='0' core_id='2' siblings='2'/> <cpu id='3' socket_id='0' core_id='3' siblings='3'/> <cpu id='4' socket_id='0' core_id='4' siblings='4'/> <cpu id='5' socket_id='0' core_id='5' siblings='5'/> <cpu id='6' socket_id='0' core_id='6' siblings='6'/> <cpu id='7' socket_id='0' core_id='7' siblings='7'/> </cpus> <cpus num='8'> <cpu id='8' socket_id='1' core_id='0' siblings='8'/> <cpu id='9' socket_id='1' core_id='1' siblings='9'/> <cpu id='10' socket_id='1' core_id='2' siblings='10'/> <cpu id='11' socket_id='1' core_id='3' siblings='11'/> <cpu id='12' socket_id='1' core_id='4' siblings='12'/> <cpu id='13' socket_id='1' core_id='5' siblings='13'/> <cpu id='14' socket_id='1' core_id='6' siblings='14'/> <cpu id='15' socket_id='1' core_id='7' siblings='15'/> </cpus> <cpuselection/> <cpuselection/> <!--NeedCopy-->
Bind the QEMU process to the corresponding physical core:
- Identify the physical cores on which the QEMU process is running. For more information, see the preceding output.
-
Bind the QEMU process to the same physical cores to which you bind the vCPUs, using the following command:
taskset –pc 8-11 29824 <!--NeedCopy-->
Citrix ADC VPX with SR-IOV and Fortville PCIe passthrough network interfaces
For optimal performance of the SR-IOV and Fortville PCIe passthrough network interfaces, follow these steps:
- Identify the NUMA domain to which the PCIe slot/NIC is tied to.
- The Memory and vCPU for the VPX must be pinned to the same NUMA domain.
Sample VPX XML file for vCPU and memory pinning for Linux KVM:
<domain type='kvm'>
<name>NetScaler-VPX</name>
<uuid>138f7782-1cd3-484b-8b6d-7604f35b14f4</uuid>
<memory unit='KiB'>8097152</memory>
<currentMemory unit='KiB'>8097152</currentMemory>
<vcpu placement='static'>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>
<memory mode='strict' nodeset='1'/>
</numatune>
</domain>
<!--NeedCopy-->
Citrix ADC VPX instance on Citrix Hypervisors
This section contains details of configurable options and settings, and other suggestions that help you achieve optimal performance of Citrix ADC VPX instance on Citrix Hypervisors.
- Performance settings for Citrix Hypervisors
- Citrix ADC VPX with SR-IOV network interfaces
- Citrix ADC VPX with para-virtualized interfaces
Performance settings for Citrix Hypervisors
Find the NUMA domain of the NIC using the “xl” command:
xl info -n
<!--NeedCopy-->
Pin vCPUs of VPX to physical cores.
xl vcpu-pin <Netsclaer VM Name> <vCPU id> <physical CPU id>
<!--NeedCopy-->
Check binding of vCPUs.
xl vcpu-list
<!--NeedCopy-->
Allocate more than 8 vCPUs to Citrix ADC VMs.
For configuring more than 8 vCPUs, run the following commands from the Citrix Hypervisor console:
xe vm-param-set uuid=your_vms_uuid VCPUs-max=16
xe vm-param-set uuid=your_vms_uuid VCPUs-at-startup=16
<!--NeedCopy-->
Citrix ADC VPX with SR-IOV network interfaces
For optimal performance of the SR-IOV network interfaces, follow these steps:
- Identify the NUMA domain to which the PCIe slot or NIC is tied to.
- Pin the Memory and vCPU for the VPX to the same NUMA domain.
- Bind the Domain-0 vCPU to the remaining CPU.
Citrix ADC VPX with para-virtualized interfaces
For optimal performance, two vNICs per pNIC and one vNIC per pNIC configurations are advised, as in other PV environments.
To achieve optimal performance of para-virtualized (netfront) interfaces, follow these steps:
- Identify the NUMA domain to which the PCIe slot or NIC is tied to.
- Pin the memory and vCPU for the VPX to the same NUMA domain.
- Bind the Domain-0 vCPU to the remaining CPU of the same NUMA domain.
- Pin host Rx/Tx threads of vNIC to Domain-0 vCPUs.
Pin host threads to Domain-0 vCPUs:
- Find Xen-ID of the VPX by using the
xl list
command on the Citrix Hypervisor host shell. -
Identify host threads by using the following command:
ps -ax | grep vif <Xen-ID> <!--NeedCopy-->
In the following example, these values indicate:
- vif5.0 - The threads for first interface allocated to VPX in XenCenter (management interface).
- vif5.1 - The threads for second interface assigned to VPX and so on.
-
Pin the threads to Domain-0 vCPUs using the following command:
taskset –pc <core-id> <process-id> <!--NeedCopy-->
Example:
taskset -pc 1 29189 <!--NeedCopy-->
Partager
Partager
This Preview product documentation is Cloud Software Group Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Cloud Software Group Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Cloud Software Group product purchase decisions.
If you do not agree, select I DO NOT AGREE to exit.