Clustering (1)

28
Exposé Système, Année 2006- 2007 Université de Marne La Vallée Informatique et Réseaux 3 ème année Jérémie LEGRAND La haute disponibilité via Heartbeat, concepts et exemples pratiques

description

Cluster

Transcript of Clustering (1)

  • La haute disponibilit via Heartbeat, concepts et exemples pratiquesExpos Systme, Anne 2006-2007Universit de Marne La ValleInformatique et Rseaux3me anneJrmie LEGRAND

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Ce que lon va voirGnralits sur la haute disponibilit

    Concepts matriser

    Exemples dapplications

    Heartbeat par la pratique

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Principes gnraux

    You'd better pump even if nothing happens than risking something worse happens if you do not pump.(The Shadoks)

    IR3 2006-2007 - Systme - Jrmie Legrand

  • La haute disponibilit, cest quoi On appelle haute disponibilittoutes les dispositions visant garantir la disponibilit d'un service et son bon fonctionnement 24H/24.

    (www.commentcamarche.net)

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Pourquoi faire ?Ces services peuvent pnaliser lentreprise en cas de dfaillances (commandes en ligne par exemple)Employs au chmage techniqueClients mcontents passant la concurrence Une nouvelle offre demploi sortira bientt dans les journaux spcialiss Votre directeur financier et votre responsable hirarchique seront TRES mcontents de vous Manque gagner pour lentreprise (1/250me des bnfices par jour darrt) Un grand nombre dentreprises proposent des services leurs salaris, clients, etc.

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Comment peut-on agir ?Le terme Haute disponibilit couvre un grand nombre de domaines :Manipulations des serveurs chaud :Reconfiguration des servicesSauvegarde des donnes, Redondance du matrielRpartition dynamique des donnes (RAID, etc.)Stockage des donnes un emplacement physique diffrentPlan de secoursFonctionnement en mode dgrad (fournir un service jug indispensable sans ses ressources habituelles humaines ou matrielles)

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Domaine de dfinition de cet expos

    Un seul point tudi ici :la dtection automatique d'une dfaillance d'un serveur, et la reprise du service qu'il offrait par d'autres machines.Ralis par le programme Heartbeat, faisant partie de la suite The Linux Virtual Server (LVS)Question importante : ai-je besoin dune seule machine active pour rpondre tous les clients, ou de plusieurs simultanment ?

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Concepts matriser

    Avant de dtruire quelqu'un, l'ordinateur le rend fou.(Anonyme)

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Si une seule machine suffit (1)Une machine active, qui rpond aux clientsUne machine configure lidentique :service arrtssurveillant la premire en permanenceLorsquelle dtecte une panne :elle lance ses serviceselle rpond aux clients la place de lautreSi la premire est rpare :Soit elle se met son tour en couteSoit elle demande reprendre la main

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Si une seule machine suffit (2)Une mthode de surveillance :la tachycardie (heartbeat)

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Sil faut plusieurs machines (1)Il faut :Plusieurs serveurs proposant le mme servicePouvoir rediriger les requtes des clients de manire quitable sur tous les serveurs

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Sil faut plusieurs machines (2)

    On peut faire mieux : le rpartiteur de chargeEn Anglais : load balancerPrendre en compte de la puissance des machines, le nombre dutilisateurs dj connects, etc.

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Algorithmes de load balancingPlthore dalgorithmes.Ceux utiliss par The Linux Virtual Server (LVS) :Least-ConnectionWeighted Least ConnectionRound-RobinWeighted Round-RobinLocality-Based Least-ConnectionDestination-HashingSource-HashingShort Expected DelayNever Queue

    (Cafine inside)

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Cela fonctionne maisGestionnaire unique = point de faiblesserequtes ?GestionnaireMachines proposant le mme serviceClient

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Comment le gestionnaire redirige les clients ?Machine active / machine passive

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Exemplesdapplications

    En thorie, il n'y a pas de diffrences entre la thorie et la pratique. En pratique, il y en a.(Chuck Reid)

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Exemple : relais de messagerieEchanges Haute disponibilit

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Exemple : serveurs MySQLEchanges Haute disponibilitNFS : Accs aux donnes de MySQL

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Exemple : serveurs WebEchanges Haute disponibilitNFS. Accs aux : - pages web - donnes du site - fichiers de sessions

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Plus dur : serveurs de fichiersServeur NFSServeur 1Serveur NFS(inactif)Serveur 2

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Heartbeat par la pratique

    The box said: "install on Windows 95, NT 4.0 or better". So I installed it on Linux.(Anonyme)

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Sous le capot dheartbeat (1)Installation (sous Debian) :

    /etc/heartbeat/ha.cf

    # apt-get update# apt-get install heartbeatlogfacilitylocal0keepalive2deadtime10bcasteth0node##nom_pc1## ##nom_pc2##auto_failbacknorespawnhacluster /usr/lib/heartbeat/ipfailapiauthipfail uid=hacluster gid=haclient

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Sous le capot dheartbeat (2)/etc/heartbeat/authkeys

    3 mthodes de protectioncrc (rseaux srs, comme un cble crois)md5(bonne alternative de scurit)sha1(meilleure scurit, utilise du temps CPU)

    Ne pas oublier :

    auth 33 md5 ###mot_de_passe#### chmod 600 /etc/heartbeat/authkeys

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Sous le capot dheartbeat (3)/etc/heartbeat/haresources

    Pleins dactions diffrentes possibles.

    Paramtres dune option spars par 4 points : ::

    ##nom_pc1## action1 action2 ... actionN

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Sous le capot dheartbeat (4)Activer une adresse IP virtuelle :

    pc1 IPaddr:192.x.x.x/24/eth0Monter un systme de fichiers local :

    pc1 Filesystem::/dev/sda1::/mnt/scsi::vfatMonter un systme de fichiers distant (NFS)

    pc1 Filesystem::192.x.x.x:/src::/mnt/dest::nfsMonter un systme de fichiers distant (NFS) avec des options

    pc1 Filesystem::192.x.x.x:/src::/mnt/dest::nfs::rsize=8192

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Sous le capot dheartbeat (5)

    Restrictions :Doit tre dans /etc/init.d/ (ou /etc/heartbeat/ressource.d/)

    Doit reconnatre les arguments start et stop

    Ne doit PAS tre lanc automatiquement au dmarrage de Linux :Et enfin : lancer un service :

    pc1 apache2# update-rc.d f apache2 remove

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Fin de cet expos.

    De plus amples informations sont disponibles sur la partie web. Explications plus fournies et plus compltes Liens vers des tutoriels complets Astuces non trouves dans les liens, etc.

    IR3 2006-2007 - Systme - Jrmie Legrand

  • Rfrences / AnnexesHeartbeat :http://linux-ha.org/ConfiguringHeartbeat

    Configurer Heartbeat (Ubuntu) :http://doc.ubuntu-fr.org/serveur/heartbeat

    The Linux Virtual Server (LVS) :http://www.linuxvirtualserver.org/

    Mcanismes de rpartition de charges de LVS :http://www.ultramonkey.org/3/lvs.html

    Mcanismes de redirection IP de LVS :http://www.linuxvirtualserver.org/how.htmlhttp://www.ultramonkey.org/3/lvs.html

    Cluster Apache :http://www.howtoforge.com/high_availability_loadbalanced_apache_cluster

    Cluster NFS :http://www.howtoforge.com/high_availability_nfs_drbd_heartbeat

    Discussions sur la haute disponibilit :http://lea-linux.org/cached/index/Leapro-pro_sys-dispo.html

    IR3 2006-2007 - Systme - Jrmie Legrand