2. Installer un cluster MOSIX


Dans cette partie, je ne compte pas réécrire le manuel de MOSIX qui est très bien fait. De plus, il existe plusieurs ressources documentaires sur le sujet.

En fait, je vais essayer de vous présenter les spécifications techniques requises pour l'installation de votre système, ainsi que les petits problèmes que vous pouriez rencontrer lors de la configuration et de l'administration du cluster et qui ne sont pas forcément expliqués dans les documentations. Toutefois, je le redis encore, privilégiez le manuel de MOSIX.

Installation

Configuration

Administration

 


1. Généralités et principe d'un cluster MOSIX

3.Commentaires sur MOSIX


C. MOSIX, le cluster de tâches


Sommaire général


Installation

 

Ici, je n'exposerai que la manière standard d'installer MOSIX. En effet, il existe deux modes d'installation, l'une étant automatisée (la standard) l'autre étant manuelle. De plus je ne parlerai que de l'installation de MOSIX 1.5.2, c'est à dire la version prévue pour le noyau 2.4.13 de Linux.

Ainsi, pour créer un cluster MOSIX, il vous faudra installer (en tant que root, c'est important ! Sinon vous ne pourriez pas installer le logiciel) le package de l'application sur chaque node séparemment. Il est aussi préférable d'utiliser la même version de MOSIX à travers tous les acteurs du système.

Avant d'installer votre cluster, vous devez tenir compte des recommandations suivantes:

Si vous avez respecté les conditions ci dessus, vous pouvez maintenant installer sur le premier nodes de la manière suivante:

1) Détarrer le fichier que vous avez téléchargé :
$ tar -xzvf MOSIX-1.5.2.tar.gz

2) placez vous dans le répertoire généré et lancez l'installation automatique de MOSIX
$ cd MOSIX-1.5.2
$./mosix.install

3) Il ne vous reste plus qu'à vous laisser guider par la procédure d'installation, s'achevant par une installation et une compilation du kernel MOSIX.

Durant l'installation, le script mosix.install modifie certains fichiers systèmes, qu'il serait regrétable de modifier sous peine d'écraser MOSIX. Les fichiers originaux sont en fait renommés avec l'extention ".pre_mosix". Ces fichiers sont les suivants :

- /etc/inittab
- /etc/inetd.conf et/ou /etc/xinetd.conf
- /etc/lilo.conf
- /etc/rc.d/init.d/atd
- /etc/cron.daily/slocate.cron

Pour désinstaller et donc revenir vers la version précedente, il faudra utiliser la commande :
$ ./mosix.install --uninstall
Et ceci afin de restaurer l'environnement de départ, comme entre autre remettre les fichiers systèmes modifiés en place.

Pour mettre en place votre Cluster, il vous faut donc répeter la même opération sur chaque station de travail. Toutefois, il existe des applications permettant de distribuer l'instalation de MOSIX à travers tous les nodes. C'est le cas de LTSP qui est un assistant de distribution dans des architectures homogènes.

Dans le cas où vous rencontrez des problèmes durant l'installation (comme pour les utilisateurs de systèmes NFS), il existe un bon support technique sur le site de MOSIX qui pourra surement répondre à vos besoins. Et dans le cas où vous ne trouveriez pas votre bonheur, faites en part aux contributeurs qui s'attacheront à résoudre le bug rapidement. Une fois tous vos noeuds installés convenablement avec le kernell MOSIX, il vous faut configurer votre cluster pour qu'il réponde à vos besoins.

 


Configuration

 

Une fois l'installation effectuée, il vous faut configurer chaque node de manière à ce qu'il puisse comprendre avec qui travailler. Le point fort de MOSIX réside que cette configuration est minimale. En effet, le script d'installation s'est chargée de configurer tout seul la station, et donc, il ne reste que la topologie du système à saisir.

En fait, il s'agit de définir les nodes participants aux clusters par l'intermédiaire du fichier /etc/mosix.map. Chaque ligne sera la description et la correspondance entre le node number et l'adresse IP d'un node ou d'un intervalle de nodes (ayant des adresses consécutives). Il vous faudra alors utiliser la syntaxe suivante :

MOSIX-node-number IP-address range-size

où :
MOSIX-node number : numero de node de la station du premier node de l'intervalle
IP-address : adresse réseau du node ou du premier node de mon intervalle
range-size : nombre de nodes dans l'intervalle. Si ce nombre est egal à 0 ou "ALIAS", alors le node désigné possède 2 adresses IP, et agit comme gateway entre 2 réseaux différents constituant un cluster.

Par exemple, voici le fichier mosix.map d'un node faisant partie d'un cluster MOSIX :

1 192.168.0.1 6
7 192.168.0.55 1
8 192.168.0.100 1
8
192.168.1.100
ALIAS

9

192.168.1.1
4

 

Ce fichier signifie alors que :

Une fois ce fichier réalisé, votre cluster MOSIX est pret à fonctionner. Toutefois, il existe quelques particularités à ne pas oublier lors de la configuration du système.

Dans un premier temps, si vous utilisez un réseau standard sous Linux, les numeros de node sont automatiquement attribués par rapport à l'adresse IP du node et de son fichier /etc/hosts. En effet, il donnera les numéros de nodes qui sont attribués par ordre croissant, de l'adresse IP la plus petite à la plus grande. Néanmoins, il arrive que ce mécanisme ne fonctionne pas très bien et donc vous serez obligé de mettre le node number manuellement dans le fichier /etc/mospe.

Puis dans un deuxième temps, dans le cas où vous utilisez deux réseaux distincts, interconnectés par une gateway, il vous faudra alors saisir le chiffre 1 dans le fichier /etc/mosgates (ce chiffre est à 0 si il n'y a pas de gateway, et à 2 s'il y en a plus de 1).

Enfin dans un troisième temps, il ne faudra pas oublier de configurer l'activation et la désactivation automatique de MOSIX au sein du système. Il pourra réaliser cette tâche par l'intermédiaire des run level classiques de Linux. Toutefois, MOSIX devra être démarré après le service réseau (paramètre de start-priority supérieur) et devra être arrété avant (paramètre de stop-priority inférieur).

A partir de ce moment, votre système est configuré et ne demande plus qu'à être administré.

 


Administration

 

Ici encore, je ne suis pas là pour recopier le manuel de MOSIX. Je vais juste vous montrer les possibilités d'administration qu'offre ce type de système. Pour plus de détails sur une fonction ou une information : man mosix dans votre console préférée.

Vous pouvez administrer et donc contrôler le comportement d'un node par l'intermédiaire des entrées ajoutées dans le répertoire : /proc/mosix/admin/.

En fait vous trouverez des fichiers correspondant à un certain type d'action et de comportement. Le fichier le plus important de ce répertoire est le fichier de configuration rempli lors de l'installation du node. En fait il s'agit d'un binaire auquel vous ne pourrez acceder que par l'intermédiaire de l'utilitaire setpe.

Pour le reste des fichiers , il vous suffira de les modifier par l'intermédiaire d'un éditeur de texte (VI, Emacs...). Il vous sera possible de modifier tout un ensemble de paramètres comme :

- bloquer ou autoriser l'arrivée de processus distant (fichier block)
- le nombre maximal de gateways (gateways)
- empêcher la migration automatique de processus (stay)
- etc...

Il vous est aussi possible de contrôler les temps entre chaque migration, de réduire la vitesse du processeur (de manière logiciel) voir de contrôler l'overhead. En fait, vous êtes en mesure de "tailler" au mieux vos nodes en fonction des processus qui transitent sur le réseau.

Bien entendu, MOSIX offre d'autres particularités d'administration. Il vous est possible de contôler à tout moment la charge et les échanges qui se réalisent sur votre cluster. Pour cela il vous suffira d'utiliser l'utilitaire mon permettant d'avoir une vue et des infomations sur la charge de système. Une autre spécificité est qu'il vous sera possible de migrer des processus manuellement (par l'intermédiare de la commande migrate), voir d'allouer des nodes à un programme spécifique (mosrun). En fait il s'agira pour vous de bien trouver les éléments qui permettront d'obtenir le meilleur système en clustering.

 


3. Commentaires sur MOSIX


Renaud Vayssade

dimanche 27 janvier, 2002 22:25