Configurer le multithreading simultané pour NetScaler VPX sur les clouds publics
NetScaler utilise différents cœurs dédiés pour ses fonctions de gestion et de plan de données. Un cœur est généralement affecté aux fonctions du plan de gestion. Les autres cœurs disponibles sont affectés aux fonctions du plan de données.
L’image suivante montre une illustration simplifiée d’un NetScaler VPX à 4 cœurs.
Figure 1. Gestion NetScaler et charge de travail du plan de données sur un système à 4 cœurs
Bien que l’image précédente montre la distribution des fonctions NetScaler sur les cœurs disponibles, il ne s’agit pas nécessairement d’une représentation précise du matériel sous-jacent. La plupart des processeurs x86 modernes fournissent deux cœurs logiques par cœur physique, grâce à des fonctionnalités commercialement connues sous le nom d’Intel Hyperthreading (HT) ou de multithreading simultané (SMT) d’AMD.
L’image suivante montre NetScaler VPX s’exécutant sur un processeur moderne avec SMT désactivé. Chaque cœur de processeur est divisé en deux ou plusieurs processeurs logiques, communément appelés threads. Chaque thread possède son propre ensemble de ressources répliquées, une partie des ressources partitionnées, et est en concurrence avec ses fils frères pour les ressources partagées.
Figure 2. Gestion NetScaler et charge de travail du plan de données sur un système à 4 cœurs/8 threads avec SMT désactivé
L’image suivante montre NetScaler VPX s’exécutant sur un processeur moderne avec SMT activé.
Figure 3. Gestion NetScaler et charge de travail du plan de données sur un système à 4 cœurs avec SMT activé
L’activation de SMT améliore les performances de NetScaler en :
- Exécution des fonctions du plan de données sur tous les cœurs physiques.
- Déplacer les fonctions du plan de gestion vers le thread frère.
- Introduction d’un mécanisme flexible de limitation des ressources pour empêcher les fonctions du plan de gestion de compromettre les performances des fonctions du plan de données.
Matrice de support SMT
Les plates-formes VPX, les types d’instances cloud et les versions de NetScaler qui prennent en charge le SMT sont répertoriés dans le tableau suivant.
| Plateforme VPX | Types d’instances | Version de NetScaler VPX | | ————– | —————————————————————- | ——————————— | | AWS | M5, m5n, c5, c5n | 14.1-12.x et versions ultérieures | | Azure | Toute famille d’instances avec hyperthreading, par exemple DS_v4 | 14.1-12.x et versions ultérieures | | GCP | instances e2 | 14.1-12.x et versions ultérieures |
Remarque :
En activant la fonctionnalité SMT, les performances de NetScaler VPX sont améliorées sur les types pris en charge.
Limitations
La fonctionnalité SMT double efficacement le nombre de vCPU disponibles pour une appliance NetScaler. Les limites de licence doivent être prises en compte pour permettre à l’appliance NetScaler de les utiliser.
Prenons l’exemple de NetScaler VPX illustré à la Figure 3. Si une licence basée sur le débit est utilisée, une licence de 10 Gbit/s ou plus est requise avec la fonction SMT pour activer 8 vCPU. Auparavant, une licence de 1 Gbit/s était suffisante pour activer 4 vCPU. Si une licence vCPU est utilisée, NetScaler VPX doit être configuré pour extraire des licences correspondant au double du nombre de vCPU pour un fonctionnement correct. Contactez le support technique de NetScaler pour obtenir de plus amples informations à ce sujet.
Configurer SMT
Avant d’activer la fonctionnalité SMT, assurez-vous que votre plateforme prend en charge cette fonctionnalité. Consultez le tableau des matrices de support dans la section précédente.
Pour activer la fonction SMT, procédez comme suit :
- Créez un fichier vide nommé
.smt_handling
dans le répertoire « /nsconfig ». - Enregistrez la configuration actuelle.
-
Redémarrez l’instance NetScaler VPX.
nscli> shell touch /nsconfig/.smt_handling Done nscli> reboot Are you sure you want to restart NetScaler (Y/N)? [N]:Y Done <!--NeedCopy-->
-
Après le redémarrage, NetScaler indique que la fonctionnalité est à la fois disponible et activée.
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-->
Pour désactiver la fonction SMT, procédez comme suit :
- Supprimez le fichier
.smt_handling
. -
Redémarrez l’instance NetScaler VPX.
shell rm -f /nsconfig/.smt_handling Done reboot Are you sure you want to restart NetScaler (Y/N)? [N]:Y Done <!--NeedCopy-->
-
Après le redémarrage, NetScaler indique que la fonctionnalité est disponible mais désactivée.
> shell sysctl -a | grep smt_handling netscaler.smt_handling_platform: 1 netscaler.smt_handling: 0 netscaler.smt_handling_active: 0 <!--NeedCopy-->
Dépannage
Exécutez la commande shell sysctl
pour vérifier l’état de la fonctionnalité SMT.
```
> shell sysctl -a | grep smt_handling
>
<!--NeedCopy--> ```
La commande peut renvoyer n’importe laquelle des sorties suivantes.
-
La fonction SMT est absente.
La commande
sysctl
ne renvoie aucune sortie. -
La fonction SMT n’est pas prise en charge.
La fonctionnalité SMT n’est pas prise en charge pour l’une des raisons suivantes :
- Votre NetScaler VPX est antérieur à 13.1-48.x ou 14.1-12.x.
- Votre cloud ne prend pas en charge le SMT.
-
Le type d’instance de votre machine virtuelle ne prend pas en charge le SMT. Par exemple, le nombre de processeurs virtuels est supérieur à 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-->
-
La fonctionnalité SMT est prise en charge mais elle n’est pas activée.
> 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-->