Qu’est-ce que le cluster computing ?

Vue aérienne de fourgons sur un parking

Qu’est-ce que le cluster computing ?

Le cluster computing est un type de calcul où plusieurs ordinateurs sont connectés pour fonctionner ensemble comme un seul système. Le terme « cluster » désigne le réseau de systèmes informatiques reliés, programmés pour effectuer la même tâche.

Les clusters informatiques se composent généralement de serveurs, de postes de travail et d’ordinateurs personnels (PC) qui communiquent via un réseau local (LAN) ou un réseau étendu (WAN).

Le cluster computing est un type d’informatique distribuée qui relie les ordinateurs d’un réseau pour effectuer une tâche de calcul, augmenter la puissance de calcul et fonctionner comme un seul ordinateur. Chaque ordinateur, ou « nœud », du réseau informatique dispose d’un système d’exploitation et d’un cœur d’unité centrale de traitement (CPU) qui gère les tâches nécessaires au bon fonctionnement du logiciel.

En raison de sa haute performance et de sa haute disponibilité, le cluster computing a de nombreuses applications, notamment le cloud computing, l’intelligence artificielle (IA), la recherche scientifique et l’analyse des big data.

Les dernières actualités technologiques, étayées par des avis d’experts

Restez au fait des tendances les plus étonnantes du secteur dans le domaine de l’IA, de l’automatisation, des données et bien d’autres avec la newsletter Think. Consultez la Déclaration de confidentialité d’IBM.

Merci ! Vous êtes abonné(e).

Vous recevrez votre abonnement en anglais. Vous trouverez un lien de désabonnement dans chaque newsletter. Vous pouvez gérer vos abonnements ou vous désabonner ici. Consultez la Déclaration de confidentialité d’IBM pour plus d’informations.

Comment fonctionne le cluster computing ?

À son niveau le plus fondamental, le cluster computing utilise un réseau local pour connecter plusieurs ordinateurs indépendants au sein d’un réseau. Dans l’architecture du cluster, chaque ordinateur du réseau, appelé « nœud », est contrôlé par un middleware, un logiciel qui permet la communication des machines. Les utilisateurs du cluster emploient les ressources de chaque ordinateur comme s’il s’agissait d’une seule machine, et non de différentes machines connectées via un réseau local.

Un cluster informatique peut connecter deux nœuds, voire des milliers. Par exemple, un cluster Beowulf utilise généralement des PC professionnels connectés par le biais d’un LAN, et constitue une alternative relativement abordable aux superordinateurs pour certaines tâches.1

Kubernetes, en revanche, une technologie liée aux conteneurs et aux clusters qui est essentielle au cloud computing, prenant en charge des clusters qui comptent jusqu’à 5 000 nœuds distincts mais connectés. Kubernetes est utilisé dans de nombreux types de déploiements cloud, y compris les architectures cloud hybride et multicloud, ainsi que dans le DevOps et la modernisation des applications.

Architecture de cluster computing

L’architecture de cluster computing est un groupe d’ordinateurs interconnectés, qui fonctionnent ensemble comme une seule machine. Chaque ressource de calcul est reliée par une connexion haut débit, comme le LAN, et est désignée dans l’architecture du système comme étant un « nœud ». Chaque nœud possède un système d’exploitation, une mémoire et des fonctions d’entrée/de sortie (E/S).

Il existe deux types d’architectures de cluster : ouvertes et fermées. Dans un cluster ouvert, chaque ordinateur possède sa propre adresse IP. Dans un cluster fermé, chaque nœud est caché derrière un nœud passerelle. Étant donné que le nœud de la passerelle contrôle l’accès aux autres nœuds et que les adresses IP sont disponibles sur Internet, les clusters fermés présentent moins de risques pour la sécurité que les clusters ouverts.

Autres types d’informatique distribuée

Outre le cluster computing, il existe deux autres types d’informatique distribuée couramment utilisés qui comportent eux aussi des réseaux d’ordinateurs connectés : le grid computing (informatique en grille) et l’informatique pair-à-pair.

Grid computing : en informatique, une infrastructure de calcul en grille est mise en place pour combiner les ressources informatiques comportant différents emplacements physiques. Les ressources informatiques disponibles sur les différentes machines sont combinées et utilisées ensemble pour résoudre un problème. Comme le partitionnement, le grid computing utilise les ressources de plusieurs ordinateurs interconnectés.

Cependant, contrairement au partitionnement, le grid computing utilise uniquement les ressources inutilisées sur les ordinateurs connectés. Le projet SETI (Search for Extraterrestrial Intelligence) est un exemple célèbre de grid computing : les ressources de calcul inutilisées par un grand nombre d’ordinateurs étaient utilisées pour analyser les signaux radio provenant de l’espace lointain à la recherche de signes de vie extraterrestre.2

Informatique pair à pair : l’informatique ou mise en réseau pair à pair (P2P) exige que deux ou plusieurs ordinateurs soient connectés en tant que « pairs » sur un réseau, ce qui signifie qu’ils ont la même puissance et les mêmes autorisations. Contrairement au cluster computing, l’architecture P2P ne requiert pas une approche de gestion centralisée.

Sur un réseau P2P, chaque nœud agit comme une machine client (un ordinateur qui doit accéder à un service) et un serveur (un ordinateur qui fournit un service). Chaque nœud pair met des ressources à la disposition des autres sur le réseau, notamment le stockage, la mémoire, la bande passante, etc.

Technologies adjacentes

Le cluster a été inventé dans les années 1960 comme méthode de distribution des tâches de calcul et de stockage de données sur plusieurs ordinateurs. Dans les années 1980, le développement de plusieurs technologies adjacentes, notamment les PC, les processeurs polyvalents et les réseaux locaux, a eu des implications importantes pour ce qui est du cluster computing.

La plus importante était sans doute l’utilisation des nœuds de calcul multiprocesseurs dans le domaine du calcul à haute performance (HPC). Les cas d’utilisation du cluster computing se sont multipliés au même titre que ceux du HPC. Aujourd’hui, ces utilisations comprennent les secteurs automobile et aéronautique, l’analyse des données provenant de satellites et de télescopes et le diagnostic de maladies graves, entre autres.

Aujourd’hui, le cluster computing est utilisé dans bon nombre des technologies les plus avancées qui sont en train de changer le monde, telles que l’intelligence artificielle (IA), le machine learning (ML) et le cloud computing. Les plus grandes entreprises du monde utilisent le cluster computing pour déplacer leurs workloads vers le cloud, augmenter la vitesse de traitement, renforcer l’intégrité des données, et plus encore. En entreprise, les clusters d’ordinateurs sont souvent chargés d’une tâche spécifique, par exemple l’équilibrage de charge, la haute disponibilité ou le traitement à grande échelle dans les centre de données.

Calcul haute performance

Processeurs Intel Xeon Scalable de 4e génération sur IBM Cloud

Découvrez l’engagement d’Intel et d’IBM en faveur de la prochaine génération de microarchitecture pour le secteur du cloud.

Avantages du cluster computing pour les entreprises

Les clusters de calcul sont principalement conçus pour être plus performants et plus fiables que les autres types d’architectures, ce qui les rend indispensables à l’entreprise moderne. Par exemple, les clusters modernes intègrent une tolérance aux pannes, c’est-à-dire la capacité à continuer à fonctionner même lorsqu’un nœud du réseau tombe en panne.

En outre, les grands clusters s’appuient sur des systèmes de fichiers distribués (DFS) et une matrice redondants de disques indépendants (RAID), ce qui permet de stocker les mêmes données à différents endroits sur plusieurs disques durs. Le cluster computing profite aux entreprises modernes à bien des égards. En voici quelques exemples : 

Performances

Comme ils reposent sur le parallélisme, les clusters sont considérés comme très performants. Ils peuvent généralement traiter les données plus rapidement et gérer des workloads plus importantes qu’un ordinateur à lui seul.

Fiabilité

Le cluster computing est considéré comme hautement fiable en raison de son intégration aux technologies DFS et RAID. Dans un cluster, même si un seul nœud tombe en panne, le réseau continue de fonctionner, et les systèmes DFS et RAID continuent de garantir que les données sont sauvegardées à plusieurs endroits. 

Disponibilité

En plus d’être très fiable, le cluster computing est également considéré comme hautement disponible en raison de sa capacité à se remettre rapidement de la défaillance d’un de ses nœuds. Si un cluster fonctionne correctement, lorsqu’un nœud tombe en panne, son travail est transféré de façon fluide à un autre dans le cluster, sans interrompre le service. 

Évolutivité

Le cluster computing est très évolutif car des nœuds de cluster peuvent être ajoutés à tout moment pour améliorer la performance. La possibilité d’ajuster dynamiquement les ressources au sein d’un cluster signifie que ce dernier peut être mis à l’échelle en fonction de la demande. 

Coût

Le cluster computing est plus rentable que les autres types d’informatique. De nombreuses entreprises y font désormais appel pour améliorer la performance, l’évolutivité et la disponibilité de leur infrastructure informatique, et ce à un prix abordable.

Types de clusters

Les clusters de calcul varient considérablement en termes de complexité et de finalité. Les clusters à double nœud relativement simples, par exemple, ne relient que quelques ordinateurs, tandis que le supercalculateur Aurora en connecte plus de 10 000.3

Si les clusters ont de nombreux cas d’utilisation en entreprise en raison de leur performance, de leur évolutivité et de leur flexibilité, ils sont également utilisés par les universités et les écoles de médecine à des fins de recherche scientifique. En fonction de leurs caractéristiques, les clusters de calcul sont divisés en trois types : haute disponibilité, équilibrage de charge et haute performance. 

Clusters à haute disponibilité

Les clusters à haute disponibilité transfèrent automatiquement les tâches d’un nœud en panne vers un autre nœud du réseau. Cette capacité à s’adapter promptement en cas de défaillance d’un nœud en fait une solution de choix pour les workloads qui doivent absolument éviter toute interruption de service.

Clusters d’équilibrage de charge

Les clusters d’équilibrage de charge, ou équilibreurs de charge, garantissent une répartition équitable du travail entre les nœuds du cluster. Sans cet équilibrage de charge, les nœuds seraient submergés par les tâches qui leur sont assignées et échoueraient plus fréquemment. Il existe différents types d’équilibrage de charge pour différents objectifs. L’un des plus connus, le Linux Virtual Server, gratuit et open source, est utilisé pour développer des serveurs haute performance et hautement disponibles, basés sur la technologie de partitionnement Linux.

Clusters de calcul haute performance

Les clusters HPC sont un réseau de processeurs puissants, capables de traiter des jeux de données multidimensionnels massifs, également appelés big data, et ce à une vitesse extrêmement élevée. Ils exigent des réseaux puissants et une latence ultra-faible pour déplacer des fichiers entre les nœuds.

Contrairement aux clusters d’équilibrage de charge et à ceux haute disponibilité, les clusters HPC disposent d’une plus grande puissance de traitement et sont spécialement conçus pour l’analyse de données (par exemple, le diagnostic médical, l’analyse d’immense quantités de données financières et le séquençage de génomes). En outre, les clusters HPC utilisent l’interface MPI (Message Passing Interface), un protocole pour les architectures informatiques parallèles qui permet la communication entre les nœuds.

Clusters d’intelligence artificielle

Les clusters d’IA sont des clusters de calcul spécialement conçus pour les workloads d’IA et de ML, telles que la reconnaissance faciale et vocale, le traitement automatique du langage naturel (TAL) et la conduite autonome. Les clusters d’IA sont spécialement conçus pour les algorithmes d’entraînement des modèles d’IA.

Cas d'utilisation du cluster computing

Les clusters informatiques ont un large éventail d’utilisations. Des applications d’entreprise comme le cloud computing et l’analytique aux logiciels permettant de créer des effets spéciaux 3D spectaculaires pour les films, en voici quelques exemples :

analyse du big data

Le cluster computing permet de traiter rapidement et efficacement de grands volumes de données, ce qui en fait un outil idéal pour l’analyse des big data. Du puissant moteur de recherche Google à l’analyse des sentiments sur les réseaux sociaux en passant par les logiciels qui analysent le marché boursier, les applications du cluster computing en matière d’analyse de données sont nombreuses et variées.

Graphiques 3D

Les capacités de traitement parallèle du cluster Power alimentent les graphismes les plus avancés dans les jeux vidéo et les films. En utilisant une grappe de nœuds indépendants, chacun doté de sa propre unité de traitement graphique (GPU), le rendu informatique en grappe (ou rendu en grappe) génère une image unique calibrée sur plusieurs écrans. Ce processus réduit considérablement le temps nécessaire à la création d’images 3D de haute qualité.

Intelligence artificielle et machine learning

En ce qui concerne les workload d’IA et le ML, le cluster computing permet de traiter et d’analyser de vastes jeux de données avec rapidité et précision, ce qui essentiel pour entraîner les puissants modèles d’IA qui alimentent les applications connues telles que ChatGPT.

Analyse des risques

Les compagnies d'assurance et les sociétés financières utilisent l'informatique en clusters pour analyser les données et quantifier les risques liés à l'achat de certaines actions ou à la fourniture d'une assurance à certains clients. L'informatique en clusters est utilisée pour analyser de grands ensembles de données et en extraire des informations pertinentes qui peuvent être utilisées pour prendre des décisions commerciales plus éclairées.

Solutions connexes
IBM Spectrum LSF Suites 

IBM Spectrum LSF Suites est une plateforme de gestion des workloads et un outil de planification de travaux pour les environnements de calcul haute performance (HPC) distribués.

Explorer les suites Spectrum LSF
Solutions de serveur et de stockage pour le calcul haute performance (HPC) | IBM

Les solutions HPC en cloud hybride d’IBM aident à relever les défis à grande échelle et à forte intensité de calcul et à accélérer le temps de découverte de l’information.

Découvrir les solutions HPC
Solutions d’infrastructure cloud

Trouvez la solution d’infrastructure cloud adaptée aux besoins de votre entreprise et ajustez les ressources en fonction de la demande.

Solutions cloud
Passez à l’étape suivante

Optimisez vos workloads d’IA les plus exigeants avec les solutions HPC d’IBM. Tirez parti de la flexibilité du cloud hybride et d’une infrastructure de pointe pour accélérer votre chemin vers l’innovation.

Découvrir les solutions HPC