310 likes | 450 Views
CLUSTERING. Grappe d'ordinateurs. CLUSTERING. Présentation Haute disponibilité Partage de charges Autres clusters Produits et solutions Conclusion. Options d'architecture Client/Serveur. Définition d'un cluster.
E N D
CLUSTERING Grappe d'ordinateurs
CLUSTERING Présentation Haute disponibilité Partage de charges Autres clusters Produits et solutions Conclusion
Définition d'un cluster • Cluster : agrégat de machines dans un but de travail coopératif. Systèmes informatiques indépendants, à couplage lâche,se comportant comme un seul système. • Architecture NORMA : NO Remote Memory Access • Ce n'est pas une architecture SMP (machines parallèles) • Architecture de cluster • Systèmes en clustering : tâches réparties sur plusieurs machines (les sites web importants). • Logiciels en clustering : une seule et une même tâches est répartie sur chaque machine (calculs).
Clustering : les besoins • Augmentation de la puissance de traitement (scalability) : on veut que la puissance de traitement suive de manière linéaire le nombre de machines du cluster. • Augmentation de la disponibilité (availability): on veut minimiser les inconvénients liées aux pannes par la redondance des machines entre elles. • Calcul Haute-Performance et Partage de charge : configurations à plusieurs dizaines (centaines) de nœuds.
CLUSTERING Présentation Haute disponibilité Partage de charges Autres clusters Produits et solutions Conclusion
ClusteringLa haute disponibilité • Assurer un redemarrage rapide en quelques minutes en cas de problème imprévu - redondance de machines. • Pas de rupture de service perceptible aux utilisateurs. • Ce n'est pas de la tolérance de panne
Concepts de base • L ’accès réseau : c’est le point de passage entre les machines du cluster et les machines de l’extérieur • Le support du système de fichier : • Baie disque partagées (SCSI / Fiber Channel) • Disques locaux des machines • Le coeur de calcul : n couples mémoire-CPU. • Ressources matérielles et logicielles nécéssaires à l ’éxécution d’un service sur un nœud • Un service est démarré sur un nœud que si ce dernier a accès à l ’ensemble du groupe de ressource nécessaire à l ’exécution du service.
CLUSTERING Présentation Haute disponibilité Partage de charges Autres clusters Produits et solutions Conclusion
ClusteringPartage de charge • La fonction de partage de charge peut être centralisée ou répartie. • Toutes les machines éxecutent le même service simultanément.
IP Point d ’accès réseau SLB service service service service FS Schéma général
Gestion par le réseau • Systèmes par partage de charge grâce au DNS multiples IP pour un nom, priorités dans les entrées • Mais - les entrées A sont cachées par les systèmes; - les entrées MX privilègie un serveur par rapport à l ’autre (Haute-Disponibilité).
Avantages • Scalability : réponse à la demande • Rajouts de serveurs. • Administration aisée de n serveurs absolument identiques en données
Cadre d'utilisation Services à données statiques : serveur web, serveur ftp (en lecture seule). Services à données dynamiques : utilisation d ’un système de fichiers « cluster ». • Problèmatique de la cohérence des données. • Utilisation d ’un File System spécifique qui permettent la concurrence transparente des accès (Distributed Lock Manager). • Emergence de solutions pour Linux.
Données partagées Solution de partage de charge à données partagées : le MUST ! Mais … • Les applications écrites spécifiquement sont très chères (Oracle Parallel Server) • Solution BdD OpenSource : MySQL • Haute-disponibilité en écriture • Lecture distribuée
CLUSTERING Présentation Haute disponibilité Partage de charges Autres clusters Produits et solutions Conclusion
ClusteringCalculs scientifique • L'ensemble des nodes cumulent leur puissance de calcul pour arriver à des performance égales à celles qu'atteignent les super calculateurs. • Ce cluster utilise des applications spécialisées dans la paraléllisation de calcul à travers une couche de communication commune. • Il est possible de gérer la mémoire partagée accessible par l'ensemble des processeurs du système à travers ses nodes.
ClusteringStockage de données • Mise en place d'une vaste capacité de stockage virtuel afin de répondre à l'augmentation des flux de données et donc nécessitant une capacité de stockage supérieure à celle d'un seul disque dur. • Le fichier est découpé en bloc de taille raisonnable et stocké par morceau sur plusieurs disque. • Virtuellement, on a l'impression que l'espace de stockage et que notre fichier est stocké en un seul morceau sur un disque unique. • Technologie : SAN et NAS
ClusteringStockage de données • Le but est de disribuer les données par l'entremise de plusieurs disques répartis sur les nodes du cluster : stockage combiné. • L'utilisateur peut travailler avec des fichiers de très grandes tailles, tout en minimisant les tranferts, dans l'éventualité ou la taille des blocs adoptée reste raisonnable.
CLUSTERING Présentation Haute disponibilité Partage de charges Autres clusters Produits et solutions Conclusion
Les solutions Globales • Clusters propriétaires : IBM, SUN, Hewlet Packard, Compaq, Fujtsu, .... • Clusters Commerciaux : systèmes proposés par des sociétés de prestations en informatique.
Operating System Edition Network Load Balancing Component LoadBalancing Server cluster Windows 2000 Advanced Server 32 8 2 Datacenter Server 32 8 4 Windows Server 2003 Enterprise Server 32 8 8 Datacenter Server 32 8 8 Les solutions Microsoft Clusters Microsoft : Windows 2000 Advanced et Datacenter Server. • MSCS : haute disponibilité • Network Load Balancing : répartition de charge
Les solutions linux Clusters Linux : LVS, Beowulf, PVFS, Linux HA-Project, Alinka, Mosix.
ClusteringMicrosoft • Il répond aux besoins croissants des entreprises en terme de messagerie éléctronique, de base de données et depuis quelques années de serveurs web ou ftp • Microsoft propose deux types de clustering : • Le clustering de service, permettant de réaliser des cluster d'application et de rendu de service, c'est à dire un cluster de haute disponibilité, à tolérance aux faute. • Le clustering à répartition de charge, c'est à dire une répartition de charge réseau sur un flux IP à travers un cluster constitués de 32 nodes au maximum.
ClusteringMicrosoft Les inconvénients : • Toutes les applications doivent provenir de Microsoft. • Les systèmes d'exploitations proposés subissent trop souvent de correctifs. • Il faut u matériel robuste, puissant et pas très nombreux(<32). • Les solutions de clustering Microsoft sont particulièrement onéreuses.
AvantagesLinux • Mise en place d'un clustering répondant à toutes les attentes. • Des applications Open Source de cluster son disponible sur le réseau Internet. • Quasi gratuité des applications.
InconvénientsLinux Le système n'est pas livré clé en main. • Il faut un investissement humain considérable notamment en terme de formation • De bonnes connaissances en informatique, sur le réseau et du monde Linux. • Beaucoup de PATIENCE.
CLUSTERING Présentation Haute disponibilité Partage de charges Autres clusters Produits et solutions Conclusion
Conclusion Il faut savoir répondre aux questions suivantes : • Choix du système d’exploitation • Quel existant ? • Budget ? • Choix du type de cluster • Que veut on clusteriser ? • Les données • Les applications • La charge …
Bibliographie et sites Internet • Architecture de l’ordinateur – Andrew Tanenbaum – InterEditions • Client serveur – S. Miranda, A. Ruols - Eyrolles • http://clusters.top500.org/ • http://www.sun.com/clusters/ • http://hp-linux.cern.ch/ • http://www.microsoft.com/windows2000/technologies/clustering/default.asp • http://www.linuxvirtualserver.org/ • http://www.beowulf.org/ • http://www.mosix.org/