Articles : Avec Kerrighed 2.0.0, Linux a les deux pieds dans le SMP
Posté par Sytoka Modon (page perso, ). Modéré le 17 avril 2007.
Kerrighed est une extension au système Linux qui permet de faire du SSI, c'est à dire de voir une grappe de PC comme une unique machine SMP. En pratique, il est implémenté sous forme de modules pour Linux, plus un patch minimal au noyau.
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.
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.
Kerrighed (734 hits)
L'annonce sur le forum de Kerrighed (156 hits)
Téléchargement de la version 2.0 (115 hits)
Un système SSI d'après Wikipedia (312 hits)
OpenMosix (146 hits)
OpenSSI (159 hits)
> Lire la suite (13 commentaires, moyenne: 3,2). [dépêche : 1930 caractères]
Vous avez demandé le commentaire #822403.




2.0.0 : une version de transition
L'équipe de développement de Kerrighed n'a pas posté de news "officielle" ici pour la version 2.0.0 car il s'agit d'une version de transition. Le projet Kerrighed a connu des mutations importantes durant les 2 dernières années. Notamment, le projet est sorti du giron de l'INRIA. Il n'est plus développé par l'Université de Rennes, et l'INRIA n'est désormais plus qu'un contributeur comme les autres. Une société (Kerlabs) a vu le jour en Novembre 2006 avec pour objectif (entre autres) de poursuivre le développement communautaire de Kerrighed.
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
> L'équipe de développement de Kerrighed n'a pas posté de news
> "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
La roadmap est encore longue, mais on est tous ravis de l'intérêt que ce projet suscite :-)
[^]Re: 2.0.0 : une version de transition
Vous planifiez l'inclusion petit à petit de fonctionnalité de kerrighed dans le noyau mainstream ?
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,..)
[^]Re: 2.0.0 : une version de transition
L'expérience (Mosix, openMosix, openSSI et Bproc) montre que faire rentrer du code SSI dans le noyau est très difficile. Aucun des projets cité n'a réussit à faire entrer quoi que ce soit dans le main stream.
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
Je pense aussi que vous auriez interet à étudier les fonctionnalités similaires et en profiter pour les améliorer. Je pense aux watchpoints avec le code de suspend. Je pense aussi que le fait qu'un noeud qui tombe corresponderait à de la RAM hotplug.
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.
[^]Re: 2.0.0 : une version de transition
Le concept de RAM hotplug est plutot axé sur une intervention planifiée (notamment le retrait d'une barrette après avoir demandé au noyau de migrer toutes les données s'y trouvant). C'est très différent d'un noeud qui tombe en panne sans prévenir dans un SSI (les processus et données sont perdues s'il n'y a pas de checkpointing/réplication préalabre), ceci relève plutot de la tolérance aux pannes.