Introduction aux systèmes de clustering

18 Jul 2022 18 Jul 2022 2368 vues ESSADDOUKI Mostafa 5 min de lecture

Systèmes de clustering

Définition : Système de clustering

Les systèmes de clustering sont similaires aux systèmes parallèles car ils ont tous deux plusieurs processeurs. Cependant, une différence majeure est que les systèmes en cluster sont créés par deux ou plusieurs systèmes informatiques individuels fusionnés. Fondamentalement, ils ont des systèmes informatiques indépendants avec un stockage commun et les systèmes fonctionnent ensemble.

Figure : Architecture d'un système en cluster

Les systèmes de clustering sont une combinaison de clusters matériels et de clusters logiciels. Les clusters matériels permettent de partager des disques à haute performance entre les systèmes. Les clusters logiciels permettent à tous les systèmes de fonctionner ensemble.

Objectif principal

Le clustering est généralement utilisé pour fournir un service à haute disponibilité, c'est-à-dire un service qui continuera même si un ou plusieurs systèmes du cluster échouent.

Principe de la haute disponibilité

Généralement, on obtient une haute disponibilité en ajoutant un niveau de redondance dans le système. Une couche de logiciel de cluster s'exécute sur les nœuds du cluster. Chaque nœud peut surveiller un ou plusieurs des autres (sur le réseau).

Fonctionnement en cas de panne

Si la machine surveillée échoue, la machine de surveillance peut :

  • Prendre possession de son stockage
  • Redémarrer les applications qui s'exécutaient sur la machine défaillante

Les utilisateurs et clients des applications ne voient qu'une brève interruption de service.

Types de systèmes de clustering

Il existe principalement deux types de systèmes de clustering : le système de clustering asymétrique et le système de clustering symétrique.

Type 1

Clustering asymétrique

Dans le clustering asymétrique, une machine est en mode de secours (hot-standby) tandis que l'autre exécute les applications.

La machine hôte de secours ne fait que surveiller le serveur actif. Si ce serveur tombe en panne, l'hôte de secours devient le serveur actif.

Caractéristique : Une seule machine active à la fois, l'autre en attente.

Type 2

Clustering symétrique

Dans le clustering symétrique, deux hôtes ou plus exécutent des applications et se surveillent mutuellement.

Cette structure est plus efficace car elle utilise tout le matériel disponible. Cependant, elle exige que plus d'une application soit disponible pour fonctionner.

Caractéristique : Toutes les machines sont actives et se surveillent entre elles.

Autres formes de clusters

Clusters parallèles

Les clusters parallèles permettent à plusieurs hôtes d'accéder aux mêmes données sur un stockage partagé.

Comme la plupart des systèmes d'exploitation ne prennent pas en charge l'accès simultané aux données par plusieurs hôtes, les clusters parallèles nécessitent généralement l'utilisation de versions spéciales de logiciels et d'applications.

Exemple : Oracle Real Application Cluster

Oracle Real Application Cluster est une version de la base de données Oracle conçue pour fonctionner sur un cluster parallèle. Chaque machine exécute Oracle, et une couche de logiciel suit l'accès au disque partagé.

  • Chaque machine a un accès complet à toutes les données de la base de données
  • Le système doit fournir un contrôle d'accès et un verrouillage pour éviter les opérations conflictuelles
  • Cette fonction est assurée par un gestionnaire de verrouillage distribué (DLM) inclus dans certaines technologies de cluster
Clusters sur réseau étendu (WAN)

Les clusters peuvent également s'étendre sur un réseau étendu (WAN), permettant de répartir géographiquement les nœuds du cluster.

Ce type de cluster offre :

  • Tolérance aux pannes géographiques
  • Répartition de charge entre sites distants
  • Continuité d'activité en cas de sinistre

Comparaison des types de clusters

TypeCaractéristiqueAvantagesInconvénients
AsymétriqueUn serveur actif, un en veilleSimplicité, basculement garantiMatériel de veille inutilisé
SymétriqueTous les nœuds actifsUtilisation optimale du matérielPlus complexe à gérer
ParallèleAccès simultané aux donnéesPerformance, scalabilitéNécessite des logiciels spécifiques (DLM)
WANNœuds distribués géographiquementRésilience aux catastrophesLatence réseau
Points clés à retenir
  • Un cluster est un ensemble de systèmes informatiques indépendants qui fonctionnent ensemble avec un stockage commun.
  • L'objectif principal est la haute disponibilité : le service continue même en cas de panne d'un nœud.
  • Le clustering asymétrique utilise un serveur actif et un serveur de secours (hot-standby).
  • Le clustering symétrique utilise tous les nœuds de manière active avec surveillance mutuelle.
  • Les clusters parallèles permettent l'accès simultané aux mêmes données via un gestionnaire de verrouillage distribué (DLM).
  • Les clusters peuvent s'étendre sur un réseau étendu (WAN) pour la résilience géographique.
  • Des applications spéciales comme Oracle Real Application Cluster sont conçues pour tirer parti des clusters parallèles.
  • La redondance est la clé de la tolérance aux pannes dans les systèmes en cluster.

Discussion (0)

Soyez le premier à laisser un commentaire !

Laisser un commentaire

Votre commentaire sera visible après modération.