![]() |
Licence Creative Commons by-nc-nd
(Paternité, pas d'utilisation commerciale, pas de modification) |
Rocks est un système complet spécialisé pour la gestion des grappes de calcul (clusters), basé sur la distribution Linux CentOS.
La distribution est très facile à installer et inclut tous les outils nécessaires au fonctionnement et au déploiement d'un cluster. L'architecture comprend un frontal et des nœuds de calcul connectés dans un sous réseau privé (cf ce schéma). La distribution s'installe sur le frontal (noyau Linux CentOS 5.x, récemment 6.x) et peut être configurée avec différents paquets logiciels (qui sont appelés "Rolls"). La configuration du cluster est maintenue à l'aide d'une base de données MySQL.
A partir d'une configuration logicielle globale pour un groupe de nœuds, Rocks permet de découvrir et d'installer automatiquement les différents nœuds du cluster. Il utilise pour cela une solution développée en interne, appelée "Avalanche", basée sur PXE, et utilisant le Peer to Peer pour ne pas saturer la bande passante. Il est ainsi possible de déployer des centaines de nœuds en parallèle. La solution est prévue pour des clusters de milliers de nœuds. Différents outils permettent de propager des commandes et des configurations à tous les nœuds simultanément. Rocks supporte des configurations de nœuds hétérogènes. Le monitoring peut être réalisé à partir de pages Web (Roll ganglia). La documentation est complète et on trouve beaucoup d'informations complémentaires sur le wiki ou sur une liste de diffusion très active.
Nous avons installé ce système sur une grappe de 32 serveurs. Le fonctionnement est assez robuste pour être utilisé actuellement par plus d'une dizaine de personnes.
Ce logiciel est intégré dans une distribution linux Centos 5.X spécifique.
La dernière version, mamba (05/2012), est distribuée en deux variantes, 5.5, basée sur CentOS 5.8, et 6.0, basée sur CentOS 6.2.
Configuration minimale pour le frontal et les nœuds de calcul :
UCSD (Université de San Diego)
Bien que la distribution Rocks ait une certaine ancienneté (plus de dix ans), qu'elle ait connu un développement continu, qu'elle ait été largement adoptée un peu partout dans le monde, qu'elle ait divers contributeurs en dehors de L'université de San Diego, la pérennité n'est néanmoins pas assurée. Les développeurs à l'UCSD, en particulier le leader du groupe, Philip Papadopoulos, sont payés sur des financements qu'ils obtiennent de diverses sources, par exemple la NSF, comme souvent aux Etats-Unis.
En Mars 2011, deux des principaux développeurs du groupe, Greg Bruno et Mason J. Katz, ont quitté le projet pour rejoindre une entreprise commerciale, StackIQ, basée aussi à San Diego, qui développe des produits commerciaux développés autour de Rocks Cluster. Suite à des questions sur la liste de diffusion concernant l'avenir du projet, Philip Ppadopoulos a répondu franchement qu'il dépendait des financements qu'il pouvait trouver, qu'il avait un emprunt pour sa maison, et que s'il ne trouvait plus de financement, il serait obligé de trouver un emploi ailleurs. Il est lui-même actionnaire de StackIQ.
Actuellement, il ne doit plus y avoir que deux développeurs à l'UCSD, Philip Papadopoulos et un développeur plus récent. StackIQ a été le premier à sortir une version de Rocks basée sur CentOS 6.x. Néanmoins, le développement à l'UCSD a continué et Philip Papadopoulos a réussi à sortir sa version basée sur CentOS 6.2, mamba, en mai dernier.
Pour l'instant, il n'y a pas de signes comme quoi il serait mis un terme au projet à l'UCSD. La solution Rocks est développée pour les besoins internes à l'Université.
A noter que StackIQ propose une version gratuite, jusqu'à 16 nœuds, de son produit commercial.
Cette distribution HPC est utilisée par de nombreux laboratoires et institutions dans le monde et en France. Il y a une page pour enregistrer son cluster. N'hésitez pas à enregistrer le vôtre pour assurer la pérennité du projet (qui dépend des financements qu'il peut obtenir, NFS ou autres..., qui dépendent eux-mêmes de la diffusion du logiciel prouvant son utilité) : http://www.rocksclusters.org/rocks-register