Fortinet ® NSE 5 : administrer FortiManager (préparation à ...
Administrer une grappe de calcul - resinfo.cnrs.fr
Transcript of Administrer une grappe de calcul - resinfo.cnrs.fr
J. Parpaillon - Administrer une grappe de calcul 2
Sommaire
✔ Présentations✔ Modèles de déploiement
✔ Problématique
✔ Par image
✔ Par description
✔ « Diskless »
✔ Performances
✔ Quelques outils✔ Récapitulatif
J. Parpaillon - Administrer une grappe de calcul 4
Présentations – IRISA-INRIA✔1975 : IRISA à Rennes✔Mars 2007 : 624 personnes/30 équipes
✔ 1967 : IRIA à Rocquencourt✔ 1979 : IRIA devient INRIA✔ 2007 : 3700 personnes sur 6 centres✔ 2200 permanents
✔ 1000 doctorants
✔ Formation par la recherche✔ Transfert industriel
J. Parpaillon - Administrer une grappe de calcul 5
Présentations – Équipe PARISProgrammation des systèmes parallèles et distribués pour la simulation numérique à
grande échelle
✔ Responsable scientifique : Thierry Priol
✔ Intergiciels de grilles✔ Gestion de données sur grilles✔ Modèles de programmation avancés pour grilles✔ Infrastructure expérimentale de grille : Grid5000✔ Systèmes d'exploitation pour grilles et grappes
✔ Kerrighed (Single System Image) [1] [2]
✔ Projet Européen XtreemOS (OS pour grilles)
J. Parpaillon - Administrer une grappe de calcul 6
Présentations – Infrastructure
✔ Projet Kerrighed✔ Mini-grappes de 4 portables (dev)
✔ Cluster « Beowulf » (40 Pcs)
✔ Grid'5000✔ Rennes
✔ 4 grappes hétérogènes (64-99 nœuds)✔ 590 cœurs (Xeon, Opteron)✔ Giga-Ethernet, Myri 10G, Infiniband 10G
J. Parpaillon - Administrer une grappe de calcul 7
Présentations – Activités
✔ Administration grappes Kerrighed✔ Hétérogénéité des plateformes
✔ Intégration de Kerrighed✔ Distributions (RPM, .deb)
✔ Grid5000
✔ OSCAR (SSI-OSCAR)
✔ Projet OSCAR
J. Parpaillon - Administrer une grappe de calcul 8
Problématique Beowulf
✔ Homogénéité non garantie✔ Support matériel
✔ Présence d'une infrastructure✔ NIS, proxy, NFS, etc
✔ Avantages : administration limitée
✔ Contraintes : pare-feu, gestion des utilisateurs, etc
J. Parpaillon - Administrer une grappe de calcul 9
Évaluation des outils
✔ Support distributions✔ Support matériel✔ Facilité prise en main
✔ Documentation
✔ Intégration distributions
✔ Performances du déploiement✔ Taille de la grappe✔ Fréquence de déploiement
J. Parpaillon - Administrer une grappe de calcul 10
Cycle d'administrationNœud maître Nœud calcul
Configurationserveur
Création d'unsystème référence
Description dusystème
Mise à jour
Duplication Création dusystème
Postconfiguration
Postconfiguration
Mise à jour
J. Parpaillon - Administrer une grappe de calcul 11
Configuration serveur
✔ Services requis : NFS, TFTP, DHCP, (DNS), (base de données)
✔ Mis à jour fréquemment :✔ NFS (répertoires exportés)
✔ DHCP
✔ Exclusivité des outils de configuration✔ ex.: fichiers générés à partir d'une base de données
J. Parpaillon - Administrer une grappe de calcul 12
Déploiement par image (1)✔ (1) Création d'un système de référence (image)
✔ Assistée : spécifique à une distribution
✔ Sur le serveur (image «chroot»)
✔ Sur un «golden client»
✔ (2) Duplication du système✔ Post-configuration
J. Parpaillon - Administrer une grappe de calcul 13
Déploiement par image (2)
✔ Avantages✔ Indépendants de l'OS
✔ Souplesse de configuration
✔ Mises à jour centralisées
✔ Inconvénients✔ Création de l'image complexe
✔ Hétérogénéité✔ logicielle✔ matérielle
J. Parpaillon - Administrer une grappe de calcul 14
Déploiement par description (1)
✔ (1) Description du système✔ Paquets, configuration des paquets
✔ Description de fonctionnalités
✔ (2) (3) Installation des nœuds de calcul, d'après description
J. Parpaillon - Administrer une grappe de calcul 15
Déploiement par description (2)
✔ Avantages✔ Description explicite du système
✔ Gestion de parc hétérogène
✔ Pas d'image à stocker
✔ Inconvénients✔ Lié à un modèle de système (distribution)
✔ Nécessite un proxy (dépôts de paquets externes)
✔ Mises à jour non centralisées
J. Parpaillon - Administrer une grappe de calcul 16
Déploiement sans disque (1)
✔ (1) Création d'un système de référence (image)✔ Voir déploiement par image
✔ Ajout spécificités : ramdisk, scripts init, etc.
✔ (2) Partage de l'image✔ (3) Démarrage des nœuds
J. Parpaillon - Administrer une grappe de calcul 17
Déploiement sans disque (2)
✔ Avantages✔ Image : mise à jour centralisée
✔ Temps de duplication nul
✔ Inconvénients✔ Peu d'outils
✔ Fiabilité (serveur fichiers)
✔ Performance avec grosses grappes
J. Parpaillon - Administrer une grappe de calcul 18
Performances
✔ Déploiement d'un seul nœud✔ Dépend du modèle de déploiement
✔ Passage à l'échelle✔ Limitation du réseau
✔ Limitation du serveur
J. Parpaillon - Administrer une grappe de calcul 20
Caractéristiques
✔ Développé à l'ID-IMAG[3]
✔ Utilisé sur Grid'5000
✔ Déploiement d'images✔ pas de création d'image
✔ post-configuration
✔ Multi plate-forme : Linux (toutes distributions), Solaris, Windows
J. Parpaillon - Administrer une grappe de calcul 21
Performances (1)✔ Déploiement en « pipeline »
✔ (1) Le nœud 1 reçoit les données du serveur
✔ (2) Le nœud n reçoit les données du nœuds n-1
✔ Très bonnes performances sur un réseau plat✔ Bonnes performances sur un réseau hiérarchisé✔ Pas de multicast
J. Parpaillon - Administrer une grappe de calcul 22
Performances (2)✔ « Measurement of performances of the kadeploy tool », Julien Leduc [4]
J. Parpaillon - Administrer une grappe de calcul 23
Utilisation
✔ Installation manuelle :✔ pas de paquets
✔ création d'une base de données
✔ kaaddnode/kadelnode : ajout/retire des nœuds du système✔ karecordenv : enregistre une image✔ kadeploy : déploit une image✔ kaconsole : accède à une console d'un nœud du cluster✔ kareboot : effectue un redémarrage soft/hard
J. Parpaillon - Administrer une grappe de calcul 24
Caractéristiques
✔ Déploiement d'images✔ Création d'images avec RPMs : SystemInstaller
✔ Réplication d'un « Golden Client »
✔ Post-configuration : SystemConfigurator✔ ramdisk, bootloader✔ paramètres réseau✔ paramètres localisation
✔ Base pour OSCAR
[5]
J. Parpaillon - Administrer une grappe de calcul 25
Performances
✔ Plusieurs modes de transport✔ rsync
✔ multicast
✔ BitTorrent
✔ Voir [6]
J. Parpaillon - Administrer une grappe de calcul 26
Utilisation
✔ Paquets disponibles : RPM, Debian✔ Configuration du serveur (PXE, DHCP)
✔ si_mkbootserver
✔ si_mkdhcpserver
✔ Création de l'image : SystemInstaller/Golden Client✔ Post-configuration : /etc/systemconfigurator/systemconfig.conf ✔ Moniteur d'installation
J. Parpaillon - Administrer une grappe de calcul 27
Création d'image - Autres
✔ Utilisation d'outils spécifiques aux distributions✔ Debian : debootstrap✔ RedHat-like : yum –installroot✔ SuSe : YaST
J. Parpaillon - Administrer une grappe de calcul 29
FAI (Fully Automatic Install)[6]
✔ Fournit avec Debian✔ Définition de classes
✔ cfengine
✔ Très souple✔ Complexe à configurer✔ Version Solaris non maintenue
J. Parpaillon - Administrer une grappe de calcul 30
Debian preseeding[8]
✔ Déploiement de référence Debian✔ Fichier preseeding contient
✔ liste de paquets
✔ valeurs de configuration
✔ Fichier preseeding accessible en http✔ URL en bootparam
✔ URL donnée par DHCP
J. Parpaillon - Administrer une grappe de calcul 31
Kickstart
✔ Déploiement automatisé de RedHat/Fedora/CentOS✔ Fichier kickstart contient
✔ liste de paquets
✔ valeurs de configuration
✔ Fichier Kickstart accessible par NFS, HTTP, local (floppy, CDROM, hd, ...)
✔ URL en bootparam
✔ URL par DHCP
✔ GUI : Kickstart configurator
J. Parpaillon - Administrer une grappe de calcul 33
Présentation
✔ Démarré en 2000✔ Open Cluster Group [10]
✔ Multi-distribution : Debian, RedHat/Fedora/CentOS, Mandriva, SuSe
✔ Intégré aux distributions (v.6.0)✔ Architectures : ia64, x86, amd64
[9]
J. Parpaillon - Administrer une grappe de calcul 34
Caractéristiques
✔ Modulaire✔ Déploiement : SystemImager, KaDeploy (prévu), NFSroot
(prévu)
✔ Système de paquets : RPM, Debian (compilateur de paquets)
✔ Interfaces : GUI, ligne de commande
✔ Utilisation de noyaux personnalisés (support du matériel)
✔ Déploiement d'un SSI (optionnel) : Kerrighed✔ Feuille de route
✔ Diskless
✔ Grappes virtuelles : Xen, Qemu
J. Parpaillon - Administrer une grappe de calcul 35
Utilisation (1)
✔ Étapes guidées entièrement graphiques
J. Parpaillon - Administrer une grappe de calcul 36
Utilisation (2)
✔ Ajout de sources de paquets additionnelles
J. Parpaillon - Administrer une grappe de calcul 37
Utilisation (3)
✔ Choix des paquets✔ Service mail
✔ LAM/MPI – MPICH - OpenMPI
✔ Torque/MAUI
✔ Ganglia
✔ SSI
✔ etc
J. Parpaillon - Administrer une grappe de calcul 39
Utilisation (5)
✔ Création de l'image✔ Méthode de déploiement
✔ rsync
✔ Multicast
✔ BitTorrent
J. Parpaillon - Administrer une grappe de calcul 40
Utilisation (6)
✔ Définition des nœuds de calcul✔ Adresses réseau
J. Parpaillon - Administrer une grappe de calcul 41
Utilisation (7)
✔ Attribution IP/MAC✔ Configuration du système de
démarrage✔ Floppy
✔ DHCP
J. Parpaillon - Administrer une grappe de calcul 42
Rocks[11]
✔ Basé sur Kickstart✔ Installation serveur/nœuds de calcul guidée✔ Fourni avec
✔ OpenMPI, mpich
✔ GridEngine
✔ Ganglia
✔ Performance : envoi des paquets par BitTorrent
J. Parpaillon - Administrer une grappe de calcul 44
NFSRoot
✔ Image utilisée par les nœuds de calcul sans déploiement✔ Voir sections précédentes pour création d'image✔ Choix du partitionnement
✔ / partagé
✔ /tmp et /var en ramfs
✔ Modification des scripts init✔ Pas d'outil dédié
✔ Debian : nfsbooted
J. Parpaillon - Administrer une grappe de calcul 45
Récapitulatif
Outil Type Distributions
KaDeploy image non non *
SystemImager image oui oui (RPM) *
FAI description non - Debian
Debian pre-seed description non - Debian
Kickstart description non - RedHat
Rocks description (wizard) oui - RedHat
OSCAR description (wizard) oui - beaucoup
Mandriva Clic description (wizard) oui - Mandriva Clic
NFSroot diskless non - *
Configuration serveur
Création image
J. Parpaillon - Administrer une grappe de calcul 46
Bibliographie[1] Site web projet Kerrighed, http://kerrighed.org/
[2] Société Kerlabs, http://kerlabs.com/
[3] KaDeploy, http://kadeploy.imag.fr/
[4] « Measurement of performances of the KaDeploy tool », Julien Leduc, http://www.grid5000.fr/mediawiki/index.php/Special:G5KExperiments?menu=renderexperiment&id=209
[5] SystemImager, http://wiki.systemimager.org/
[6] « SystemImager and BitTorrent: a peer-to-peer approach for Large-Scale OS Deployment », Brian Elliott Finley, Erich Focht, Bernard Li, Andrea Righi,
http://download.systemimager.org/pub/docs/SystemImager-LinuxTag-2007-paper.pdf
[7] Fully Automatic Install, http://www.informatik.uni-koeln.de/fai/
[8] Debian pre-seeding, http://wiki.debian.org/DebianInstaller/Preseed
[9] OSCAR, http://svn.oscar.openclustergroup.org/
[10] Open Cluster Group, http://openclustergroup.org/
[11] Rocks, http://rockscluster.org/