... TruCluster1.1
TruCluster est un cluster composé de machines de type Alpha sous Tru64, un système Unix dédié aux architectures Alpha, ainsi qu'un ensemble de composants spécialisés tels que des baies de disques ou des ``memory channel''.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... Oracle1.2
Alpsys utilise Oracle dans son fonctionnement interne. Nous avons donc limité notre choix dans les différentes versions de Linux par les certifications d'Oracle. Notre système devant de plus être ``clusterisé'', nous avons également restreint nos choix en fonction des différents systèmes de cluster disponibles sous Linux.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... virtuelle2.1
Lorsque nous effectuons un traitement quelconque sur le cluster, nous ne l'effectuons pas explicitement sur une des machines de celui-ci. Ainsi, nous effectuons des opérations sur le cluster (la machine virtuelle) qui va lui-même les effectuer sur une (ou plusieurs) machine réelle (non-virtuelle !!!).
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... suivent2.2
Notre étude n'ayant été faite que sur les clusters à Haute Disponibilité, nous ne ferons qu'un apperçu des clusters de calcul, car ils ne corrrespondent pas aux caractéristiques de ` `clusturing'' que nous avons recherché.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... instructions2.3
Nous pouvons nous demander s'il s'agit des fondeurs, créant des machines de plus en plus performantes (et souvent surdimensionnées), qui les produisent pour améliorer les performances des programmes, ou si à l'inverse, les concepteurs de programmes qui comptent sur les performances des machines pour pallier à l'inefficacité des évolutions de leurs créations ! Ce phénomène est visible notamment dans les programmes graphiques.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... données2.4
Ce type de traitement est implémenté par des architectures telles que la Connection Machine (CM) et MasPar. Ces machines sont des réseaux de processeurs (65536 dans le cas de la CM), interconnectés par des ``switch''. Il est à noter que les instructions étant exécutées de façon synchrone sur chacun des processeurs sur des données différentes, aucun mécanisme de verrou n'est mis en place pour les données.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... donnée2.5
Ce mécanisme est aussi appelé ``pipeline''. Cette technique est généralement mise en oeuvre dans les processeurs RISC. En effet, ces processeurs permettent le découpage de certaines instructions machines en opérations élémentaires. Ces opérations sont ainsi exécutées de façon parallèle et indépendante sur une même donnée.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... temps2.6
Ce type d'architecture est implémentée par un ensemble d'ordinateurs interconnectés. La communication entre les différents processeurs des MIMD s'effectue soit par un mécanisme de mémoire centrale partagée (dans le cas du CRAY, ou de l'IBM 3090), ou par des échanges de messages (dans le cas du CS-2). Les processeurs pouvant exécuter les instructions indépendamment les uns des autres, nous obtenons ainsi un système asynchrone.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... d'exploitation2.7
Dans la suite de ce texte, nous appellerons également les systèmes d'exploitation par l'acronyme OS (``Operating System'', traduction anglaise de ``Système d'Exploitation''.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... classique2.8
Nous appelons ``système classique'', une machine conventionnelle pourvue d'un OS exécutant des tâches de façon parallèle comme les systèmes Unix traditionnels.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... pannes2.9
Ces pannes peuvent être dues à des problèmes matériels ou logiciels. Nous avons constaté qu'une part non négligeable de problème logiciel apparaît même dans des contextes industrielles.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... ``standards''2.10
Nous appelons standards, les systèmes composés de machines conventionnelles, et ayant un OS tel True64 ou Solaris.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... irrécupérables2.11
Nous évoquons ici des problèmes aussi bien liés aux processus de contrôle des processus, qu'à l'OS ou même à l'environnement matériel.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... désastreuse2.12
Nous pouvons ici citer un exemple de problème lié à l'arrêt des systèmes de contrôle. Dans une usine de production d'aluminium, la régulation des cuves de production d'aluminium était assuré par un système simple (non ``clusterisé''). Lors d'une opération de maintenance du système, celui-ci n'était plus en mesure de contrôler la régulation des cuves. Ainsi, les cuves n'étant plus surveillées par quelconque machine, celle-ci est entrée en fusion au bout de 45 minutes. Le coût de cette panne s'est élevé à plus de 200000 $ !
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... disponibilité2.13
Dans la suite du texte, nous désignerons les clusters à haute disponibilité par l'acronyme HA (``High Available'', traduction anglaise de ``Haute Disponibilité'').
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... machine2.14
Dans la suite du texte, nous utiliserons les termes ``noeud'' ou ``membre'' pour désigner une machine du cluster.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... ressources2.15
Nous appelons ressources tout composant matérielle, ou logicielle, devant être ``hautement disponible''.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... cluster2.16
Ce noeud peut être aussi bien un autre membre disponible du cluster, que le membre de surveillance lui-même.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... interne2.17
Les clients accèdent aux ressources du cluster en utilisant une adresse IP publique fixe, mais au sein du cluster, les ressources pouvant être déplacées d'une machine à une autre, les adresses ainsi associées à chacune des ressources sont modifiables.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... cluster2.18
Le choix des membres sur lesquels sont rechargé les instances des ressources est déterminé par un ensemble de regles paramétrables par l'administrateur du cluster
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... actif/passif2.19
Dans la suite du texte, nous utiliserons l'acronyme AP pour désigner les clusters en mode Actif/Passif.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... membre2.20
Nous appelons cette opération la migration de ressources.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... montage2.21
Nous appelons point de montage, le point d'entrée vers l'espace de stockage commun à tous les membres du cluster.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... actif/actif2.22
Dans la suite du texte, nous utiliserons l'acronyme AA pour désigner les clusters en mode Actif/Actif.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... montage2.23
Le nombre de noeuds pouvant accéder au même point de montage dépend de la technologie des disques, ainsi que l'OS sur lequel le cluster fonctionne. En effet, le noyau Linux ne permet pas d'accès simultanés à un disque commun SCSI par plus de deux machines. Il permet néanmoins la gestion simultané de quatre membre sur un disque Fibre Channel. Donc sur un cluster Linux, nous pouvons répartir au plus quatre ressources accédant aux même données se trouvant sur disques en Fibre Channel.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... disques3.1
Nous appelons ``baies de disques'', un ensemble de disques auquel plusieurs machines (ou serveurs) peuvent accéder simultanément.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... Manager''3.2
Le Connection Manager est en fait une partie intégrante du noyau de Tru64, mais il peut être considéré comme un module externe.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... noeuds3.3
Le fait d'ajouter ou d'enlever des noeud est tout simplement l'acceptation ou le refus d'un membre lors du processus de formation (ou de reformation) du cluster.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... ``failover''3.4
Nous utiliserons dans la suite du texte le terme ``failover'' pour désigner l'opération de migration d'une ressource d'un membre à un autre.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... CAA3.5
CAA est l'acronyme du terme anglais ``Cluster Application Availability''.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... contrôle3.6
Dans la suite du texte nous utiliserons le terme ``monitorer'' pour désigner l'action de contrôler ou surveiller la présence d'une ressource quelconque.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... démon3.7
Nous appelons ``démon'', un processus lancé en tache de fond. Celui-ci est constamment en attente de requêtes de client. Dans ce cas, il exécute cette requête, retourne dans son état d'attente.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... Server3.8
Dans la suite du texte, nous désignerons RedHat Advanced Server par l'acronyme AS.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... quorum3.9
Il est à noter que le quorum ne fonctionne pas de la même façon que dans TruCluster. En effet, le quorum est indispensable dans le cadre du cluster RedHat AS
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... programmables4.1
Un automate programmable est une machine réagissant comme un composant programmable. Ainsi, sa fonction est d'effectuer des opérations en fonction de ses entrées de façon parallèle.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... réelles5.1
Nous n'avons pas pu tester Alpsys sur un environnement cluster Linux
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.