Systèmes 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.
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).
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.
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.
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
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
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
| Type | Caractéristique | Avantages | Inconvénients |
|---|---|---|---|
| Asymétrique | Un serveur actif, un en veille | Simplicité, basculement garanti | Matériel de veille inutilisé |
| Symétrique | Tous les nœuds actifs | Utilisation optimale du matériel | Plus complexe à gérer |
| Parallèle | Accès simultané aux données | Performance, scalabilité | Nécessite des logiciels spécifiques (DLM) |
| WAN | Nœuds distribués géographiquement | Résilience aux catastrophes | Latence réseau |
- 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.