Le clustering est en fait une solution d'alternative pour les personnes et/ou les entreprises n'ayant pas les moyens de posséder un super-calculateur. En effet, le coût d'une architecture en clusters reste tout de même très inférieur à celui des supers-ordinateurs.
De plus, dans un cluster, l'administrateur peut étendre la puissance de son système sans trop de difficultés dans la mesure où cette mise à jour ne consiste qu'à rajouter un node dans l'architecture et à le déclarer auprès des autres acteurs du cluster (surtout le node server, le "chef d'orchestre" du cluster).
Néammoins, les systèmes en clustering les plus puissants et les plus performants restent des solutions basées sur du matériel et des Unix propriétaires, et apparaissent tout de même comme des solutions très chères et donc réservées au grandes structures. Pour palier à ce problème, il existe tout de même d'autres alternatives pour monter un cluster.
Typiquement, il s'agit des systèmes proposés par les grands fournisseurs et acteurs mondiaux de l'informatique. Nous retrouvons IBM, SUN, Hewlet Packard, Compaq, Fujitsu, et bien d'autres encore. En fait, il s'agit, pour la plupart, de grands constructeurs de matériels informatiques (serveurs ou stations de travail puissantes), voir des sociétés développant des systèmes d'exploitation proprétaires de type Unix.
Ce sont ces sociétés qui les premières ont mis en place les systèmes en clustering dans les entrerpises, en s'inspirant des recherches effectuées dans les grandes universités et laboratoires de recherche. En fait, c'est le meilleur moyen qu'elles ont pour proposer des systèmes complets clés en mains de leurs crus et surtout homogènes de bout en bout.
Toutefois, comme nous pouvons rapidement nous en douter, le coté propriétaire de ce type de système agit sur la non compatibilité des systèmes entre eux. Donc, toute mise à jour devra être effectuée avec des matériels de marque identique à celle de notre système. De plus, le coté spécifique de ces clusters aboutit à l'utilisation quasi obligatoire des prestations fournies par le constructeur.
Toutes ces petites choses font que le coût de tels clusters restent très élevé. En effet, le hardware et le software étant spécifiques à un seul fournisseur, ce dernier ne se gène pas pour évaluer au plus haut la compétence vendue. Pour un cluster scientifique, il vous faut facilement compter dans les 100 000 € pour les premiers prix. Bien entendu ce chiffre ne représente rien au regard des architectures ultra puissantes coutant quant à elles plusieurs millions d'euros (> à 1 000 000 €).
Il s'agit içi de systèmes proposés par des sociétés de prestations en informatique. En fait, les entreprises proposant la mise en place de clusters désirent rendre un service autour des technologies de clustering. Elles proposent donc une solution se voulant concurente d'une autre mais performante et peu chère (en comparaison aux systèmes propriétaires).
Ces prestataires proposent, pour la plupart, des solutions employant l'existant informatique de leur client pour adapter leur système. De plus, pour rester concurent sur le marché, ils utilisent souvent des distributions Linux pour appuyer leur développement et ceci afin de garder une certaine"généricité" quant au système proposé.
Les clusters proposés restent aussi dans un domaine très peu exploré par les grands constructeurs. En fait, ces sociétés de prestations proposent pour la plupart des systèmes pour les réseaux comme les firewalls (en système à Haute Disponibilité) ou encore les architectures de serveurs WEB (clusters à répartition de charge).
Toutefois, ce type de clustering ne s'affiche toujours pas comme étant la panacée. En effet, même si le milieu est concurent, l'euphorie de ces dernbières années a poussé ces sociétés à gonfler le prix de leurs prestations. De plus, au fur et à mesure que l'on avance dans cette ère technologique, les utilisateurs deviennent de plus en plus exigeant et donc les développements relatifs à ces demandes se trouvent de plus complexes et poussés. Tous ceci fait que les propositions commerciales de clustering restent encore des solutions assez chères pour une PME ou un particulier. Il faut compter en moyenne 50 000 € pour posséder un système correct
Depuis la version NT4 de son système d'exploitation (OS) Windows, Microsoft propose de mettre enplace un cluster constitué de serveurs (Microsoft ! bien entendu !) pour répondre aux besoins croissants des entreprises en terme de messagerie électronique, de base de données et depuis quelques années de serveurs WEB ou FTP.
La firme de Redmond propose deux types de clustering :
- Le clustering de Service. Il s'agit de réaliser des clusters d'application et de rendu de service. En fait Microsoft propose un cluster de Haute disponibilité, à tolérance aux fautes. Il permet de fournir une garantie et une qualité de service aux utilisateurs d'applications comme Microsft SQL Server.
- Le clustering à répartition de charge. Ici, Microsoft garanti une répartition de charge réseau sur des flux IP à travers un cluster constitués de 32 nodes au maximum. Typiquement, il s'agit de répartir les charges réseaux d'un serveur WEB, d'un serveur de média, etc.
A travers ses solutions, Microsoft vise les entreprises désireuses d'améliorer leur production, en proposant des systèmes permettant d'améliorer et d'accélérer le travail quotidien des employés, mais aussi permettant de réaliser du commerce (comme le e-business) avec un plus grand nombre de clients. Par exemple, les systèmes à répartition de charge sur Microft Exchange Server permettent d'éviter les surcharges lors d'un trop grand nombres de demandes utilisateurs.
Toutefois, il existe encore quelques freins dans l'utilisation de tels systèmes. En effet, les clusters Microsoft ne fonctionnent que sur de l'architecture Microsoft. Il est préférable d'utiliser des applications signées Bill Gates pour ne pas se retrouver avec des soucis que Microsoft ne voudra (ou ne saura pas ?) pas résoudre. De plus, les systèmes d'exploitations proposés subissent trop souvent des correctifs pour en faire des systèmes fiables et stables. Enfin, le matériel devant être utilisé pour ces sytèmes doit être robuste et puissant et ne doit pas être trop nombreux sur le cluster (32 nodes au maximum !) sous peine de se trouver avec des congestions de liens dûes à l'échange gourmand entre chaque entité.
Tous ces inconvénients font que les solutions de clustering Microsoft reviennent chères. Dans un premier temps, l'utilisation d'OS et d'applications signés Microsoft coûtent un prix non négligeabe. Il vous faut compter plusieurs milliers d'euros (€) pour les licenses Microsoft Server 2000 (une license par poste installé !!!), et autant pour les licences d'applications (comme les bases de données ou les applications bureautiques). Dans un deuxième temps, le matériel nécessaire à la mise en place de tels systèmes coûtent chers compte tenue qu'il doit être performant et puissant. Les mini serveurs sont les machines les plus souvent utilisées pour recevoir les OS, et coûtent dans les 20 000 euros (€) pièces. Enfin, dans un troisième temps, le coté trop vulnérable et peu stable des outils Microsoft fait que les dépenses en prestations et protections atteignent des sommes devant être prise en compte (environ 40 000 € par an).
L'alternative, à tous ces clusters chers, est Linux. En effet, l'utilisation de l'OS au pingouin et l'ouverture d'esprit de sa communauté font de celui ci une solution très interressante et très viable.
Ainsi, grâce à Linux, vous serez capable de mettre en place un cluster puissant et répondant à toutes les attentes que vous pouvez vous formuler. Il suffit de posséder quelques PC, une distribution Linux et quelques Logiciels permettant de réaliser la parallélisation entre les nodes du système. Une fois ceci fait, vous pouvez développer le cluster que vous désirez, et le proposer par exemple à votre société. Toutefois, il faut savoir que de nombreuses personnes ont déjà effectué des recherches et mises en oeuvre des clusters en développant des applications Open Source et donc disponible sur le réseau en version gratuite. Il vous suffit juste de l'installer et de l'administrer et vous pouvez obtenir un système qui n'aura rien à envier aux solutions les plus chères.
En fait, le caractère quasi gratuit de ce type de clustering réside dans le fait que le système n'est pas livré clé en main et nécessite donc un investissement humain important pour le mettre en place. De plus, la mise en oeuvre de ce type de solution n'est pas aisée et demande de bonnes compétences en informatique et réseaux, et de bonnes connaissances du monde Linux, mais surtout un travail de patience et de passionné. Enfin, même si cela fonctionne sur du vieux matériel, il faut savoir que les performances du cluster se dégradent en fonction du caractère obsolète ou/et hétérogène des appareils constituant le cluster.
Nous pourrions comparer la construction d'un cluster Linux, au montage d'une maquette devant être exposée. Dans un premier temps, il vous faut un connaisseur et un passionné. Puis dans un deuxième temps il vous faut du matériel pour construire votre architecture. Le maquetiste essaiera de trouver le meilleur bois, utilisera la meilleure colle et achètera la meilleure peinture (tout comme l'informaticien qui trouvera l'application correspondante à son besoin, la distribution répondant le mieux à ses attentes...). Dans un troisième temps, il faut de la patience et de la percévérence afin de palier au petit soucis qui fait que cela ne fonctionne pas du premier coup. Enfin, dans un dernier temps, il faut trouver le meilleur support et le meilleur emplacement qui mettra en valeur la maquette réalisée. Pour l'administrateur il s'agira de trouver le meilleur matériel et de placer son système là où il est le plus attendu.
Dans la suite de ce site, je décris plus en détails les solutions qu'offrent Linux en terme de clustering, tout en gardant à l'esprit certaines contraintes de ce type de clusters.
Renaud Vayssade
dimanche 13 janvier, 2002 22:28