Grappe de serveurs
|
|
Cet article ne cite pas suffisamment ses sources (juillet 2012).
Si vous disposez d'ouvrages ou d'articles de référence ou si vous connaissez des sites web de qualité traitant du thème abordé ici, merci de compléter l'article en donnant les références utiles à sa vérifiabilité et en les liant à la section « Notes et références ». (Modifier l'article)
|
On parle de grappe de serveurs[1] ou de ferme de calcul (computer cluster en anglais) pour désigner des techniques consistant à regrouper plusieurs ordinateurs indépendants (appelés nœuds, node en anglais), afin de permettre une gestion globale et de dépasser les limitations d'un ordinateur pour :
- augmenter la disponibilité ;
- faciliter la montée en charge ;
- permettre une répartition de la charge ;
- faciliter la gestion des ressources (processeur, mémoire vive, disques dur, bande passante réseau).
La création de grappes de serveurs est un procédé peu coûteux, résidant dans la mise en place de plusieurs ordinateurs en réseau qui vont apparaître comme un seul ordinateur ayant plus de performances (puissance du processeur, dimension de l'espace de stockage, quantité de mémoire vive, etc.), particulièrement utilisé pour les calculs parallèles. Cet usage optimisé des ressources permet la répartition des traitements sur les différents nœuds.
L'un des principaux avantages est la disparition de la nécessité d'investir dans un serveur multiprocesseur coûteux pour se contenter de plus petits périphériques qui seront ensuite connectés entre eux selon ce principe de "grappe", permettant une meilleure adaptabilité en fonction des besoins - d'un point de vue performance comme financier.
Sommaire |
Fonctionnement [modifier]
Le terme cluster exprime l'idée de grappe. La Délégation générale à la langue française et aux langues de France préconise d'ailleurs l'emploi du terme « grappe ». Une grappe de serveurs est donc un groupe de serveurs indépendants fonctionnant comme un seul et même système. Un client dialogue avec un cluster comme s'il s'agissait d'une machine unique.
Dans les domaines scientifiques, les clusters sont habituellement constitués de nœuds de calcul, de nœuds de stockage et de un ou plusieurs nœuds frontaux. Il y a quelques fois des nœuds supplémentaires dédiés au suivi (monitoring).
Les nœuds peuvent être reliés entre eux par plusieurs réseaux. Communément, le réseau avec le débit le plus lent est dédié aux tâches d'administration (chargement des systèmes sur les nœuds, suivi, mesure de charge ...). À ce premier réseau vient généralement s'adjoindre un second réseau, avec une bande passante beaucoup plus importante. Ce réseau peut utiliser des technologies de type Quadrics, Myrinet ou Infiniband. Ces débits peuvent atteindre 40 Gigabit/s.
Les programmes exécutés sur ce genre de machine se servent d'une API standard Message Passing Interface, utilisant la communication entre les divers processus répartis sur les nœuds avec des messages.
Lors de la défaillance d'un serveur, le logiciel de clustering réagit en isolant le système défaillant. De même pour le partage des tâches d'un serveur surchargé avec un autre (dans le cas ou les ressources sont partagées entre plusieurs tâches).
Utilisation [modifier]
Leur utilisation est de plus en plus importante dans la communauté scientifique, où les besoins en calculs à haute performance (HPC) sont toujours croissants, ainsi qu'en imagerie numérique notamment pour les images de synthèse au travers des fermes de rendu.
En Informatique de gestion, les clusters peuvent être utilisés pour minimiser l'impact d'une panne de serveur sur la disponibilité d'une application. Cela nécessite la mise en œuvre de disques partagés, par exemple dans le cadre d'un réseau de stockage SAN.
Dans d'autres domaines, on a de plus en plus recours aux réseaux pair à pair (P2P) comme alternative aux grappes de serveurs, et ce pour un coût moindre.
Note [modifier]
- Grappe est le terme recommandé par la Commission générale de terminologie et de néologie en France, voir FranceTerme