Jean-Pierre Deschamps Qui suis-je ?

Projet Personnel – Hydra

Entête du projet Hydra

Histoire du projet Hydra

Depuis que je suis tout jeune, j’ai toujours aimé les ordinateurs. Ce qui me faisait rêver c’était les salles pleines de gros ordinateurs surpuissants. Il y a quelques années, un de mes rêves était d’avoir mon propre serveur. J’ai alors investi dans du matériel usagé acheté sur eBay pour monter mon premier serveur biprocesseur. Le tout premier aura été un biprocesseur Intel Pentium 3 d’une puissance de 933 MHz. Cependant, ce serveur n’aura jamais été en service.

Suite à cela, j’ai remplacé mon fidèle ordinateur de bureau par un ordinateur portable. C’est ainsi que mon puissant (pour l’époque) Intel Pentium4 HT s’est transformé en serveur. Il est aujourd’hui connu sous le nom de code Heracles. Il restera la machine la plus fiable du lot pendant quelques années. Il aura aussi de multiples transformations au fil des années. Il est doté d’un refroidissement liquide fait maison avec du matériel de la marque DangerDen. Cela lui permettra d’atteindre avec stabilité la puissance monstrueuse de 4,6 GHz contre les 3,2 GHz de base. Il aura aussi été équipé d’une alimentation secondaire pour alimenter la pompe électrique surpuissante qui l’équipait. Le nom Heracles tire ton origine d’une époque où seul le nombre de MHz comptait pour déterminer la puissance d’un processeur. C’était de la force brute. Tout comme le héros mythologique, il était doté d’une puissance brute hors du commun.

Un serveur c’est bien, mais cela ne restait qu’un vulgaire « ordinateur de bureau ». Mes rêves de serveur n’étaient pas encore comblés. C’est ainsi qu’en cherchant encore et encore sur eBay que je fis la découverte de ce qui allait devenir Cerberus. Un magnifique Dell PowerEdge 6300, équipé de tous ces processeurs ainsi que de la moitié de sa mémoire possible. C’est une bête dotée de 4 processeurs Intel Xeon Pentium 3 cadencés à 550 MHz. Il peut recevoir jusqu’à 4 gigaoctets de mémoire vive (16 x 256 Mo) et possède une triple alimentation redondante. Pour la maigre somme de 80 USD, il était à moi. J’avais cependant négligé une chose : le poids. C’est ainsi qu’un beau matin j’ai reçu la visite d’un semi-remorque me livrant sur une palette en bois mon « ordinateur » de 55 kilos. C’est ainsi que Cerberus est devenu mon premier véritable serveur, d’abord sous Windows Server 2003, puis sous Debian. Aujourd’hui, il est à la retraite et tenait rôle de NAS. Le nom Cerberus provient du monstre mythologique du même nom : il est noir, et possède 3 têtes. Cerberus le serveur est doté d’une peinture noire ainsi que de 4 « cerveaux » et d’une taille impressionnante comparée aux bêtes de la même espèce.

En février 2012, je profite de mon cours de Parallélisme pour visiter le Mammouth de l’université Sherbrooke. Je suis comme un enfant la veille de Noël. Il fait chaud, c’est bruyant au point de devoir porter des protections pour les oreilles, mais surtout je suis entouré de plusieurs centaines d’ordinateurs. Suite à la visite, je m’attarde avec les responsables du Mammouth et j’apprends qu’ils sont en train de mettre hors service la plus ancienne des 3 grappes. Les serveurs individuels seront ensuite mis en vente. J’y ai immédiatement vu ma chance. C’est ainsi qu’au début de l’été, je fais l’achat de 8 serveurs Dell PowerEdge SC1425 tout équipés et prêts à l’emploi. La question restante était : que faire maintenant de tous ces ordinateurs?

Plus récemment, Cerberus arrivant à sa retraite définitive, j’ai fait l’acquisition d’un nouveau serveur. Un Dell PowerEdge 2850 et une unité de stockage Dell PowerVault 220S complètent ma grappe en tant que nœud de gestion. Cette dernière machine se nomme Minotaur et offre tout l’espace de stockage nécessaire et redondant pour mes données à protéger.

Utilisation

Afin d’unifier l’ensemble, j’ai d’abord tenté d’utiliser Oracle VM et Oracle VM Manager. L’idée était d’expérimenter avec un centre de virtualisation. Cela permettrait de partager tout le matériel sur plusieurs systèmes d’exploitation de tout type selon les besoins. Je pourrais donc partager le matériel entre des entités Windows et Linux selon la disponibilité des logiciels. Cependant, je n’ai jamais réussi à vraiment en tirer quoi que ce soit. D’abord un combat infernal pour configurer et installer les 8 nœuds de calcul. Ensuite un combat pour mettre en place le manager sur Cerberus. Apparemment, impossible de gérer un cluster x64 avec un manager x86. Faute d’avoir des processeurs compatibles x64 sur Cerberus, j’ai finalement abandonné cette idée option.

Finalement, je suis tombé sur le site du projet Kerrighed. La meilleure description du projet est la suivante : Kerrighed est un système d’exploitation système à image unique pour les clusters. Kerrighed offre une vue d’une machine SMP unique, au sommet d’une grappe de PC standard. Dans mon cas, j’ai donc une Debian avec 16 processeurs, 32 cœurs et 64 gigaoctets de mémoire vive. Plutôt impressionnant d’avoir ça à la maison, sans parler de la chaleur qui règne et de la facture d’électricité.

Aujourd’hui, cette petite grappe de calcul est installée dans mon laboratoire à l'Université Sherbrooke . Elle héberge un ensemble de systèmes d’exploitation déployés par le protocole PXE et est utilisée dans le cadre mes projets et recherches : MPI, OpenCL, SnuCL, VCL, MySQL Cluster et bien d’autres...