Décision de conception : évolutivité d’un serveur unique

Vue d’ensemble

Cet article fournit des recommandations et des conseils pour estimer le nombre d’utilisateurs ou de machines virtuelles (VM) pouvant être pris en charge sur un seul hôte physique. Ceci est communément appelé Citrix Virtual Apps and Desktops « évolutivité à serveur unique » (SSS). Dans le contexte de Citrix Virtual Apps (Citrix Virtual Apps) ou de la virtualisation des sessions, elle est également communément appelée « densité d’utilisateurs ». L’idée est de déterminer combien d’utilisateurs ou de machines virtuelles peuvent être exécutés sur un seul matériel exécutant un hyperviseur majeur tel qu’un Citrix Hypervisor.

Dans cet article, nous abordons plusieurs variables ou facteurs qui influencent Citrix Virtual Apps and Desktops (Citrix Virtual Apps and Desktops) SSS. Nous fournissons des recommandations et des directives simples pour estimer rapidement le SSS pour un environnement donné. Nous concluons en fournissant quelques exemples de dimensionnement utilisant des scénarios du monde réel.

Avertissement !

Cet article contient des conseils pour estimer le SSS. Les conseils sont de haut niveau et ne seront pas spécifiques à votre situation ou à votre environnement unique. La seule façon de véritablement comprendre la fonction Citrix Virtual Apps and Desktops SSS est d’utiliser un outil de test de capacité à monter en charge ou de charge tel que Login VSI. Citrix recommande d’utiliser ces instructions et ces règles simples pour estimer rapidement le SSS. Citrix recommande toutefois d’utiliser Login VSI ou l’outil de test de charge de votre choix pour valider les résultats, en particulier avant d’acheter du matériel ou de prendre des décisions financières.

Facteurs d’évolutivité

Il existe de nombreux facteurs, paramètres ou variables qui ont une incidence sur SSS. Il ne s’agit en aucun cas d’une liste exhaustive, mais voici plusieurs des principaux facteurs qui ont une incidence sur le SSS. Bien que de nombreux autres facteurs influencent les performances et l’évolutivité, tels que les agents antivirus et de surveillance, le codage graphique, les récentes vulnérabilités de sécurité telles que Spectre et L1 Terminal Fault, les facteurs détaillés ci-dessous ont généralement le plus d’impact sur Citrix Virtual Apps and Desktops SSS. Voyons maintenant comment estimer rapidement Citrix Virtual Apps and Desktops SSS à l’aide d’une formule simple.

Charge de travail

L’un des principaux facteurs qui influent sur les performances et l’évolutivité est la charge de travail elle-même. Certaines charges de travail peuvent impliquer des collaborateurs effectuant de simples tâches de saisie de données sur un serveur Citrix Virtual Apps. D’autres charges de travail peuvent impliquer des développeurs compilant du code ou des ingénieurs manipulant des modèles 3D via Citrix Virtual Desktops. Ces charges sont communément appelées charges de travail « légères » et « lourdes », respectivement. Et comme vous le verrez plus loin dans cet article, ce type de variance de charge de travail peut avoir un impact considérable sur SSS.

Matériel

Le matériel physique sur lequel les charges de travail s’exécutent a un impact direct sur SSS. Il va probablement sans dire, mais un serveur plus récent équipé de 28 cœurs et 1 To de RAM sera en mesure de prendre en charge plus d’utilisateurs qu’un vieux matériel avec seulement 12 cœurs et 256 Go de RAM exécutant une charge de travail similaire. Et le processeur joue un rôle particulièrement important dans le Citrix Virtual Apps and Desktops SSS, comme vous le verrez plus loin.

Rapport d’activité

L’un des aspects souvent négligés du SSS est le ratio d’activité ou la fréquence à laquelle les utilisateurs travaillent par rapport à ceux qui sont inactifs. De nombreux outils de test d’évolutivité adoptent une approche prudente et peuvent utiliser un taux d’activité assez élevé, de l’ordre de 80 % (ce qui signifie que les utilisateurs sont actifs ou travaillent 80 % du temps et inactifs 20 % du temps). Cependant, nous constatons souvent dans le monde réel que les ratios d’activité sont plus proches de 40 à 60 %. Et ce temps d’inactivité supplémentaire peut avoir un impact considérable sur SSS et sur la quantité de matériel à acheter pour prendre en charge un environnement Citrix Virtual Apps and Desktops.

Taux de surabonnement au processeur

La plupart des charges de travail Citrix Virtual Apps and Desktops sont liées au processeur, ce qui signifie que le point ultime d’épuisement des ressources est directement lié au nombre de cœurs physiques disponibles dans le système. Et comme les utilisateurs ne sont généralement pas actifs 100 % du temps et que nous disposons d’outils tels qu’Intel Hyper Threading (sans oublier que les planificateurs de processeurs des hyperviseurs sont de plus en plus efficaces), nous pouvons souvent « surcharger » ou surabonner des ressources telles que le processeur. Et le taux de surallocation du CPU peut également avoir un impact sur SSS (de manière positive ou négative si ce n’est pas fait avec soin). Citrix a découvert qu’un ratio de surabonnement au processeur de 2:1 est souvent optimal dans Citrix Virtual Apps SSS. Par exemple, si un serveur physique est équipé de puces à double socket 20 cœurs (c’est-à-dire « 2 x 20 »), il y a 40 cœurs physiques au total disponibles. Et avec Hyper Threading activé, il y aurait 80 cœurs virtuels ou logiques disponibles. En appliquant un ratio de 2:1 au nombre de cœurs physiques (40), nous vous recommandons d’utiliser 80 cœurs lors du dimensionnement ou de l’estimation du SSS. D’autres exemples sont fournis à la fin de cet article pour illustrer ce concept plus en détail.

Architecture et fonctionnalités du microprocesseur

L’architecture sous-jacente de la puce et de la mémoire peut également jouer un rôle important dans SSS. Et Intel a récemment apporté des améliorations significatives dans la conception de l’architecture sous-jacente des microprocesseurs. Sur des puces plus anciennes, telles que Broadwell et Haswell, Intel connecte des processeurs à l’aide d’une architecture basée sur l’anneau. Mais à mesure que le nombre de cœurs augmentait, la latence d’accès augmentait et la bande passante par cœur diminuait. Intel a donc décidé d’atténuer ce problème en divisant la puce en deux moitiés et en ajoutant un deuxième anneau pour réduire les distances. Et cette division invisible devait être prise en compte dans Citrix Virtual Apps and Desktops SSS pour obtenir des résultats optimaux. Dans le passé, cela a été appelé « NUMA » ou Non-Uniform Memory Access. Et le principal conseil était de vous assurer que vous dimensionniez les machines virtuelles Citrix Virtual Apps aussi grandes que possible, sans croiser des nœuds NUMA, des clusters subNUMA ou des anneaux en même temps. Si vous avez dimensionné vos machines virtuelles Citrix Virtual Apps de manière trop importante et qu’elles couvraient effectivement des nœuds ou des anneaux NUMA, cela peut entraîner un « thrashing » NUMA en accédant à des ressources non locales, ce qui réduirait le SSS. Avance rapide et Intel est passé d’une architecture basée sur l’anneau à une architecture basée sur le maillage. Et cette nouvelle architecture de maillage introduite dans Skylake n’a pas les mêmes limites qu’auparavant où nous devions diviser les puces, diviser les noyaux ou ajouter des anneaux. Et cela change en particulier la façon dont nous dimensionnons les serveurs Citrix Virtual Apps. Il est important de comprendre la puce spécifique utilisée dans le matériel que vous achetez et la manière dont l’architecture du microprocesseur sous-jacente est conçue et construite.

Les multiplicateurs magiques

Si vous souhaitez évaluer ou estimer rapidement Citrix Virtual Apps and Desktops SSS, ces conseils sont efficaces. C’est aussi simple que cela : prenez le nombre de cœurs physiques dans un serveur, multipliez-le par 5 ou 10, et le résultat sera votre SSS. Si vous recherchez le nombre de machines virtuelles Citrix Virtual Desktops que vous pouvez prendre en charge, vous devez utiliser le « multiplicateur magique » de 5. Si vous essayez de comprendre combien d’utilisateurs de Citrix Virtual Apps peuvent exécuter sur un seul matériel, vous en utiliserez 10. Regardons quelques exemples du monde réel pour voir comment cela est appliqué dans la pratique.

Exemple 1 : Citrix Virtual Desktops

Supposons que vous exécutez Windows 10 avec des applications Office standard et quelques applications personnalisées. Vous avez identifié qu’une spécification de machine virtuelle à 2 processeurs virtuels et 4 Go de RAM fonctionnerait mieux compte tenu de la charge de travail et de l’image. Vous envisagez d’acheter des lames Cisco dotées de 36 cœurs physiques (2 x 18) et de 768 Go de RAM. Et vous aimeriez comprendre à quel type de densité vous pouvez vous attendre. Utilisons la règle de 5 pour Citrix Virtual Desktops :

5 x 36 = 180 machines virtuelles par hôte

Remarque : Les charges de travail spécialisées basées sur Citrix VDI et RDSH sont liées au processeur 99,9 % du temps. Le processeur est devenu le goulot d’étranglement d’évolutivité par opposition à la mémoire, au stockage sur disque ou au stockage réseau. Ces multiplicateurs omettent d’autres zones à part le CPU car le processeur est devenu le facteur principal. Bien que l’hyper-threading, les vitesses d’horloge et les cœurs virtuels soient tous importants, rien n’est plus important que le nombre de cœurs physiques sur un serveur. Lorsque vous utilisez la règle de 5 et 10, il est préférable d’ignorer tous les autres chiffres dans un premier temps pour effectuer le dimensionnement initial afin d’éviter toute confusion.

Exemple 2 : Applications virtuelles Citrix (matériel plus ancien)

Supposons que vous exécutiez une application telle que SAP sur Windows Server via Citrix Virtual Apps. Vous réaffectez d’anciennes lames HP avec 24 cœurs physiques (2 x 12) et 256 Go de RAM. Vous avez fait des recherches sur le site Web d’Intel sur le fait que la puce sous-jacente utilise une architecture de tampon en anneau et que chaque socket est effectivement divisé en 2 nœuds NUMA avec 6 cœurs chacun. Par conséquent, une spécification VM de 6 vCPU / 24 Go de RAM semble optimale pour maximiser l’évolutivité linéaire et minimiser le vidage NUMA. En utilisant un ratio de surabonnement au processeur de 2:1, vous utilisez les 48 cœurs logiques et vous déployez 8 serveurs XenApp sur chaque hôte (48/6 = 8). En utilisant la règle des 10 pour Citrix Virtual Apps :

10 x 24 = 240 utilisateurs par hôte

Exemple 3 : Citrix Virtual Apps (matériel plus récent)

Supposons que vous exécutiez une application de santé populaire sur Windows Server 2022 via Citrix Virtual Apps. Vous envisagez d’acheter des lames Dell dotées de 32 cœurs physiques (2 x 16) et de 256 Go de RAM. Vous avez fait des recherches sur le site Web d’Intel pour savoir que la puce sous-jacente utilise une architecture maillée et qu’il existe une directive commerciale visant à réduire au maximum l’encombrement de votre machine virtuelle. Vous décidez d’une spécification VM de 16 vCPU / 48 Go RAM. Pour utiliser un ratio de surabonnement au processeur de 2:1, vous utilisez les 64 cœurs logiques et vous déployez 4 serveurs XenApp sur chaque hôte (64/16 = 4). En utilisant la règle des 10 pour Citrix Virtual Apps :

10 x 32 = 320 utilisateurs par hôte

Comme mentionné précédemment, nous réalisons qu’il y a beaucoup plus de variables ou de paramètres qui influencent l’évolutivité par rapport au nombre de cœurs physiques dans un serveur. Dans certaines situations, la charge de travail de Citrix Virtual Apps and Desktops n’est pas liée au processeur. Une attention particulière est donc requise lors du dimensionnement. De plus, d’autres facteurs dont nous n’avons pas parlé, tels que la vitesse d’horloge du processeur et les tempêtes d’ouverture de session, sont également importants et compliquent encore les exercices de dimensionnement. Mais grâce à des années d’expérience sur le terrain et à des centaines de déploiements, nous avons découvert que rien n’est plus important que le nombre de cœurs physiques. Si vous souhaitez connaître votre SSS exact pour votre charge de travail particulière et votre environnement unique, Citrix vous recommande vivement d’utiliser un outil tel que Login VSI pour tester et valider correctement les résultats.

Références

Présentation technique de la gamme évolutive de processeurs Intel Xeon

Bonnes pratiques en matière d’antivirus

Test de charge VSI de connexion

Décision de conception : évolutivité d’un serveur unique