Scale-up ou scale-out : le meilleur choix pour votre datacenter
Une entreprise en pleine croissance ayant besoin d'augmenter sa puissance de traitement devra choisir entre une approche scale-out ou scale-up.
Ce texte date de 2015 et n'est plus à jour. Un article plus récent sur le sujet se trouve ici.
Chaque datacenter utilise des serveurs pour fournir les ressources informatiques (cycles de traitement, espace mémoire, réseau et E/S disque) nécessaires au fonctionnement des charges de travail. Lorsque ces dernières se multiplient et les besoins informatiques augmentent, les ressources des serveurs doivent évoluer (dimensionnement ou « scaling ») pour satisfaire ces demandes. Nous allons répondre à certaines questions courantes sur l'évolutivité des serveurs et en analyser les répercussions sur une entreprise.
LeMagIT : On entend souvent parler de « scale-up » et de « scale-out », mais que recouvrent ces notions et quelles sont les différences entre elles ?
Stephen Bigelow : Il existe deux façons principales de faire évoluer les ressources informatiques (serveur) dans un datacenter. La première consiste à ajouter d'autres serveurs, c'est le « scale-out ». Supposons qu'une entreprise possède un serveur virtualisé sur lequel tournent cinq applications et dont elle utilise 80 % de la capacité de traitement physique. Si elle a besoin de déployer un plus grand nombre de charges de travail, il se peut que les ressources disponibles sur le serveur actuel ne lui suffisent pas. Dans ce cas, l'entreprise peut acheter et déployer un serveur supplémentaire pour prendre en charge les nouvelles applications.
L'architecture scale-out s'applique aussi à l'informatique en cluster ou distribuée, dans laquelle plusieurs petits serveurs se partagent la charge de traitement d'une seule application. Par exemple, une charge de travail critique peut être exécutée sur deux serveurs ou plus, le traitement étant partagé entre ces serveurs selon une configuration actif-actif. Si un serveur tombe en panne, un autre peut prendre le relais afin d'assurer la disponibilité de l'application. S'il faut plus de redondance, il est possible d'étendre encore le cluster en y ajoutant d'autres noeuds de serveur.
Mais les progrès en matière de puissance de traitement ont considérablement augmenté les ressources serveur dans chaque nouvelle configuration. Aujourd'hui, il est possible de remplacer un serveur vieillissant par un modèle offrant une capacité de traitement, une mémoire et des E-S largement supérieures à celles des modèles plus anciens, tout cela pour le même encombrement physique (par exemple, un châssis en rack 1U ou 2U) et, souvent, une consommation d'énergie moindre. Cette approche est dite « scale-up » parce que le boîtier physique peut gérer des charges de travail plus nombreuses ou volumineuses.
Reprenons notre premier exemple dans lequel un serveur virtuel venait à manquer de ressources. Il est possible de déployer au cours du cycle suivant d'actualisation des technologies un nouveau serveur comportant plus de ressources de traitement, de faire migrer toutes les charges de travail de l'ancien serveur au nouveau, puis de désactiver l'ancien serveur ou de l'affecter à d'autres tâches. Ainsi, on se retrouverait avec bien plus de ressources disponibles pour traiter des charges de travail de production supplémentaires sans que l'espace et l'énergie nécessaires dans le datacenter augmentent outre mesure. C'est comme si l'ancien serveur était progressivement mis à la retraite.
LeMagIT : Quand est-il préférable d'utiliser un serveur scale-up dans le datacenter, et quand faut-il opter pour un serveur scale-out ?
Stephen Bigelow : Il n'y a pas de réponse unique à cette question. Les deux approches, scale-up et scale-out, sont parfaitement valables pour ajouter des ressources informatiques à un environnement de datacenter, et elles sont totalement compatibles. Une approche scale-out peut être la solution lorsqu'un grand nombre de petits noeuds est nécessaire, éventuellement pour une batterie de serveurs Web ou un cluster de serveurs imposant des hôtes physiquement redondants. A l'inverse, une approche scale-up peut convenir pour un gros projet de consolidation de serveurs virtuels où il s'agit de faire résider plus de charges de travail sur moins de serveurs physiques.
LeMagIT : Quelle est l'incidence de la virtualisation dans le choix entre scale-up et scale-out ?
Stephen Bigelow : Cette question est partiellement incluse dans les précédentes. Une entreprise qui procède à la virtualisation des serveurs peut profiter de la consolidation en déplaçant un plus grand nombre de charges de travail sur des serveurs moins nombreux mais plus performants. Cette optique permet à l'entreprise de réduire le nombre total de serveurs à acheter et insiste beaucoup plus sur l'approche scale-up.
Le plus gros problème reste l'affectation des ressources. En effet, une affectation mal conduite peut avoir un impact négatif sur les projets de scale-up. La virtualisation vous permet de provisionner une machine virtuelle pour chaque charge de travail et d'affecter des ressources de traitement à chaque machine virtuelle. Si vous affectez trop de ressources à une machine virtuelle (par exemple, 2 Go de mémoire alors que seulement 1 Go est nécessaire), les ressources sont gaspillées et le serveur risque d'héberger moins de machines virtuelles que prévu. Inversement, si un administrateur n'affecte pas assez de ressources à une machine virtuelle, la charge de travail risque de mal fonctionner voire de provoquer le blocage de tout le serveur.
Pour qu'une entreprise tire le meilleur parti d'une consolidation en serveur scale-up, les ressources doivent être correctement allouées en fonction des besoins de chaque charge de travail.
Les serveurs scale-up ne présentent-ils pas plus de perturbations pour un datacenter ?
Bigelow : Le risque de pannes et de perturbations du travail avec un serveur scale-up est tout à fait réel. Lorsqu'un serveur puissant exécute une application unique, telle qu'une base de données, les risques de perturbations supplémentaires sont peu élevés car en cas de plantage d'une application ou de panne d'un serveur, il n'y a qu'une seule charge de travail à récupérer. Du moment que le serveur fonctionne ou qu'un autre serveur adapté est disponible, des techniciens informatiques expérimentés ne mettront pas longtemps à restaurer l'application grâce à l'immense puissance de traitement du serveur.
Cependant, les choses sont un peu différentes si le serveur scale-up est virtualisé et consolidé avec de nombreuses charges de travail. Si un serveur de ce type tombe en panne, il risque d'y avoir beaucoup plus de charges de travail à récupérer, ce qui peut prendre énormément de temps. N'oublions pas que dès que chaque charge de travail est restaurée, elle commence à utiliser le réseau et les autres ressources de traitement, ce qui ralentit en fait la récupération des charges de travail suivantes.
Quoi qu'il en soit, il est important de relativiser ces perturbations. Les charges de travail critiques doivent être protégées par une stratégie de résilience telle que la mise en cluster de serveurs physiques ou la redondance des charges de travail virtuelles. On utilise pour cela des outils comme EverRun de Marathon Software. Une fois protégées, les charges de travail critiques resteront disponibles et pourront en fin de compte être synchronisées avec la machine d'origine dès qu'elles seront restaurées. Seules les charges de travail non indispensables ou non critiques feront les frais d'une interruption prolongée.
LeMagIT : Les serveurs scale-up et scale-out sont-ils comparables en termes de fiabilité ?
Bigelow : La fiabilité des serveurs scale-up et scale-out est assez proche. Ce qui est intéressant, c'est que de nombreux serveurs d'entreprise intègrent des technologies conçues pour améliorer la fiabilité et éviter les interruptions. Les techniques autrefois réservées aux systèmes les plus puissants et les plus onéreux sont en train de devenir rapidement accessibles aux modèles d'entrée de gamme.
Même les serveurs 1U d'entrée de gamme sont équipés d'alimentations redondantes qui leur permettent de continuer à fonctionner en cas de défaillance d'une alimentation. De même, grâce à la présence de plusieurs processeurs multicoeur, seules certaines charges de travail risqueront de subir des perturbations en cas de défaillance d'un coeur ; en outre, celles-ci pourront être redémarrées sur un autre système, voire sur d'autres coeurs de processeur disponibles au sein du même système. Le processus est le même lorsque plusieurs ports d'E-S réseau sont présents. Le trafic des charges de travail peut basculer d'un port défaillant à un port en état de marche ou les charges de travail touchées peuvent être transférées sur un autre serveur avec une perte minime de performances. Il est possible de mesurer la redondance des CPU et des ports réseau sur des serveurs professionnels d'entrée de gamme.
La mémoire représente l'un des derniers territoires à explorer en matière de fiabilité des serveurs car les machines virtuelles résident dans la mémoire des serveurs sous forme d'images. Les serveurs professionnels d'entrée de gamme comme le Dell PowerEdge R510 prennent en charge la mémoire ECC (error correction code), qui permet de corriger les types courants de corruption de mémoire, mais ce dispositif n'offre généralement aucune protection contre les défaillances complètes de mémoire.
Les serveurs plus perfectionnés comme ceux de la gamme Hewlett-Packard ProLiant visent à réduire les interruptions en adoptant des techniques de tolérance aux pannes comme la mise en miroir des mémoires (du type RAID-1 avec un stockage sur disque et des modules de mémoire de secours en ligne qui prennent automatiquement le relais des modules défaillants), ce qui équivaut à un stockage sur disque de secours.
L'AUTEUR
Stephen J. Bigelow possède plus de 20 ans d'expérience de la rédaction technique dans les domaines de la technologie et de l'informatique. Il est titulaire d'une licence d'ingénierie électrique, ainsi que des certifications CompTIA A+, Network+, Security+ et Server+, et a écrit des centaines d'articles et plus de 15 livres sur le dépannage d'ordinateurs, dont Bigelow’s PC Hardware Desk Reference et Bigelow’s PC Hardware Annoyances.