Cette version 2.0.0 de Kerrighed, sortie le 4 avril, est liée au noyau Linux 2.6.11, contrairement aux versions précédentes qui étaient basées sur la version 2.4. Cependant, la prochaine version est déjà en cours d'intégration pour le noyau 2.6.20.
Les deux autres projets ayant un lien direct avec le SSI sont OpenMosix et OpenSSI. La prochaine version d'OpenMosix est pour le moment en /alpha/ et sera liée au noyau 2.6.17. OpenSSI, en version 1.9 bêta, est lui aussi lié au noyau Linux 2.6.11. On remarque que pour ces trois projets, la transition vers le noyau 2.6 de Linux a été longue mais commence à donner des résultats très prometteurs.
Le projet Kerrighed est maintenant développé de manière communautaire mais reste encore lié à ses origines hexagonales, dont l'Université de Rennes et l'incontournable INRIA. Les caractéristiques principal de Kerrighed sont :
- Un ordonnanceur de tâches au niveau de la grappe. La charge est donc répartie entre tous les noeuds (PC).
- La mémoire est partagée sur l'ensemble de la grappe comme pour une machine SMP.
- Les tâches peuvent migrer d'un noeud à un autre, même les tâches liées à des flux (socket, pipe, fifo, périphérique en mode caractère...), sans être pénalisées.
- Un système de fichier centralisé qui permet de voir l'ensemble des disques de la grappe comme un système RAID partagé et accessible depuis tous les noeuds de la même manière.
- Un mécanisme de 'checkpoint' pour les tâches permettant de faire des images de celles-ci à des instants fixés et de pouvoir les relancer plus tard depuis ces points. Ce mécanisme de 'checkpoint' est fondamental pour les longs calculs (plusieurs semaines) répartis sur plusieurs noeuds tout simplement pour pouvoir faire face à une panne quelconque ou à un reboot d'un noeud.
- Une interface pour les 'thread' compatible POSIX au niveau de la grappe.
- Une interface unifiée pour la gestion des tâches au niveau de la grappe (top, ps, kill...). Le PID d'une tâche est ainsi unique sur la grappe.
- Le mécanisme SSI, de part sa modularité, peut être activé ou déactivé au niveau de chaque tâche (mémoire partagée, ordonnanceur global...).
Il y a quelques points à améliorer comme l'ajout et surtout la suppression à chaud d'un noeud sur la grappe, c'est sur la feuille de route. Il est remarquable cependant de voir les progrès réalisés dans tous les domaines lié au SMP qui vont nous permette de voir une grappe de PC standard comme une seule et unique machine.
Aller plus loin
- Kerrighed (24 clics)
- L'annonce sur le forum de Kerrighed (7 clics)
- Téléchargement de la version 2.0 (8 clics)
- Un système SSI d'après Wikipedia (7 clics)
- OpenMosix (6 clics)
- OpenSSI (10 clics)
# Un projet prometteur, mais...
Posté par ragoutoutou . Évalué à 4.
Par exemple, le système de fichiers distribué (et non centralisé) n'est pas encore de la partie.
Bref, il faut bien faire la distinction entre les objectifs et ce qui est déjà implémenté.
En dehors de ça, de par ses objectifs et les éléments déjà implémentés, kerrighed est de loin le projet le plus prometteur à l'heure actuelle pour la création de clusters de calcules: rien que la gestion au niveau thread plutôt qu'au niveau process représente une grande avancée. Le système de pagination distante de kerrighed est aussi un élément inédit (mais pas encore opérationnel).
On voudrait presque être en décembre 2008...
[^] # Re: Un projet prometteur, mais...
Posté par Brice Goglin . Évalué à 1.
Il a quoi d'inédit par rapport à un système comme GMS ou tous les autres travaux existants sur la pagination à distance ?
[^] # Re: Un projet prometteur, mais...
Posté par ragoutoutou . Évalué à 2.
[^] # Re: Un projet prometteur, mais...
Posté par Sytoka Modon (site web personnel) . Évalué à 1.
> objectifs et celles qui sont implémentées à l'heure actuelle.
Je n'ai pris que ce qui est écrit dans le tarball.
En effet, comme le site web a été entièrement refait, il manque un peu de contenu. On ne sais donc pas trop ce qui marche de ce qui ne marche pas.
Enfin, tout cela n'empêche pas de faire de la pub pour le projet, surtout que c'est le premier des trois à sortir une version 'stable' basé sur le noyau 2.6 de Linux.
# 2.0.0 : une version de transition
Posté par Renaud Lottiaux . Évalué à 10.
La version 2.0.0 est une version de transition entre le produit de recherche issus de l'INRIA et un produit communautaire qui a le soutient d'une société et qui vise à pouvoir être utilisé en production. Kerrighed a longtemps été un pur produit de recherche, un "démonstrateur" dont l'objectif était de mettre en avant des possibilités techniques. Beaucoup de fonctionnalités "flashies", mais une stabilité très incertaine.
La version 2.0.0 marque donc une première étape vers une nouvelle version avec moins de fonctionnalités, mais plus de stabilité. L'objectif est d'obtenir une version avec moins de fonctionnalités, mais plus solide et plus proche des réalités matérielles des clusters modernes (support SMP et 64 bits). Cette version est prévu pour cet été. Les fonctionnalités présentes dans la version "recherche" seront dès lors réintégrés progressivement dans les versions successives de Kerrighed.
Comme le fait justement remarquer ragoutoutou, les objectifs ne sont pas les fonctionnalités :) Voir la page current status du nouveau site Kerrigned pour avoir un aperçu des réelles fonctionnalités et de la roadmap de réintégration des fonctionnalités de recherche dans la version stable.
A noter enfin que le travail de portage en 2.6 n'a pas été si complexe que cela. Le très long délais entre la version 2.4 et cette version 2.6 est principalement dû à une réorganisation du développement sur Kerrighed et un énorme travail de refactoring sur le code. Dernière chose : l'accès au code et aux mailing-lists de développement est désormais totalement libre (https://gforge.inria.fr/projects/kerrighed/) et le code sera bientôt déplacé sur une forge communautaire.
[^] # Re: 2.0.0 : une version de transition
Posté par Sytoka Modon (site web personnel) . Évalué à 4.
> "officielle" ici pour la version 2.0.0 car il s'agit d'une version de
> transition
Exact, je ne suis pas lié à Kerrighed et j'ai écrit la news hier au soir tout seul.
Cela fait tellement d'année que j'attends un système SSI qui *marche*, j'y ai cru il y a pas mal d'année avec OpenMosix mais finalement, le déployement n'a jamais été possible... Alors, en voyant la nouvelle dynamique du projet Kerrighed, je n'ai pu m'empêcher d'être heureux et de le faire partager.
Bonne chance au projet.
[^] # Re: 2.0.0 : une version de transition
Posté par Jean Parpaillon (site web personnel) . Évalué à 3.
"Liberté, Sécurité et Responsabilité sont les trois pointes d'un impossible triangle" Isabelle Autissier
[^] # Re: 2.0.0 : une version de transition
Posté par Nicolas Boulay (site web personnel) . Évalué à 4.
En général, les développeurs Linux n'aiment pas l'arrivé de gros morceau de code qui cassent tout.
Par contre, ils ne sont jamais contre l'inclusion de fonctionnalité sexy (genre les checkpoints qui pourraient servir dans n'importe quel système hautes disponibilités). J'imagine d'ailleurs qu'il doit y avoir du code commun avec les fonctionnalités "suspend" (to RAM, to disk,..)
"La première sécurité est la liberté"
[^] # Re: 2.0.0 : une version de transition
Posté par Renaud Lottiaux . Évalué à 3.
Néanmoins, nous allons animer un BOF au prochain Linux Symposium pour discuter de la potentielle inclusion d'une partie de Kerrighed. Il s'agit du mécanisme central de Kerrighed : les KDDM (anciennement connu sous le nom de conteneurs). Ce mécanisme est très peu intrusif, il ne nécessite que 2/3 lignes de patch au noyau, plus le code du mécanisme lui-même.
[^] # Re: 2.0.0 : une version de transition
Posté par Nicolas Boulay (site web personnel) . Évalué à 3.
Bref, j'ai tendance à penser que donner une fonctionnalité utile à Kerrighed mais aussi à tout le monde aura plus de chance d'être accépté. Il sera encore plus accépté si les autres SSI peuvent le réutiliser.
Bon, ensuite, c'est des histoires de personnes. Il faudrait tenter de filer les patchs pour le kernel-mm ou autre. Ou encore, il faut peut-être en demander une règle du jeu clair sur la lkml "Qu'est-ce qu'il vous faut pour accépter une fonctionnalité SSI pour Linux?"
J'imagine qu'ils voudront des garanties pour le support. reseirfs3 a franchement laissé des mauvais souvenirs.
"La première sécurité est la liberté"
[^] # Re: 2.0.0 : une version de transition
Posté par Brice Goglin . Évalué à 1.
# LSM / RMLL en Juillet
Posté par Gaétan RYCKEBOER . Évalué à 3.
Je suis toujours en quête de contributeurs pour les porjets de clustering, toute bonne volontée est bienvenue.
De fait, je cherche notamment à trouver quelqu'un qui soit capable de faire une synthèse entre OpenMosix, OpenSII & Kerrighed, et d'expliquer les différences.
Le même type d'exercice sera fait sur les outils de virtualisation (vServer, OpenMosix & XEN entre autres).
L'un des lecteur se sent l'âme de faire une conférence en Français &/ou Anglais ?
--
Gaétan RYCKEBOER
# Performances
Posté par e-t172 (site web personnel) . Évalué à 3.
Je m'y intéresse car cela me paraît très alléchant, du point de vue de la maintenance et du temps dépensé, d'avoir à administrer un seul système logique au lieu de plusieurs systèmes physiques... qui plus est, on pourrait faire tourner plusieurs daemons (HTTP, SMTP, FTP, etc.) sur un seul système Kerrighed qui équilibrerait de manière automatique et transparente la charge entre les différentes machines.
Je n'ai jamais administré de cluster donc je propose est peut être une immense connerie, mais je suis curieux de savoir ce que ça donnerait. Je me demande notamment si un tel système serait adapté à des applications où le temps de réponse a une certaine importance : pour pouvoir transférer des pages d'une machine physique à une autre avec très peu de latence, il faut un réseau extrêmement rapide entre les éléments du SSI, non ? (Ethernet 1 Gbps ?)
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.