La Haute disponibilité des
modules EOLE
V e r s i o n d u d o c u m e n t r é v i s é : J a n v i e r 2 0 1 4 D a t e d e c r é a t i o n : J a n v i e r 2 0 1 4 E d i t e u r P ô l e d e C o m p é t e n c e E O L E R é d a c t e u r s
Équipe EOLE
L i c e n c e
Cette documentation, rédigée par le pôle de compétence EOLE, est mise à disposition selon les termes de la licence :
Creative Commons by-nc-sa (Paternité - Pas d'Utilisation Commerciale - Partage des Conditions Initiales à l'Identique) 2.0 France :
http://creativecommons.org/licenses/by-nc-sa/2.0/fr/.
Vous êtes libres :
● de reproduire, distribuer et communiquer cette création au public ;
● de modifier cette création Selon les conditions suivantes :
● paternité : vous devez citer le nom de l'auteur original de la manière indiquée par l'auteur de l'œuvre ou le titulaire des droits qui vous confère cette autorisation (mais pas d'une manière qui suggèrerait qu'ils vous soutiennent ou approuvent votre utilisation de l'œuvre) ;
● pas d'Utilisation Commerciale : vous n'avez pas le droit d'utiliser cette création à des fins commerciales, y compris comme support de formation ;
● partage des Conditions Initiales à l'Identique : si vous modifiez, transformez ou adaptez cette création, vous n'avez le droit de distribuer la création qui en résulte que sous un contrat identique à celui-ci.
À chaque réutilisation ou distribution de cette création, vous devez faire apparaître clairement au public les conditions contractuelles de sa mise à disposition. La meilleure manière de les indiquer est un lien vers cette page web.
Chacune de ces conditions peut être levée si vous obtenez l'autorisation du titulaire des droits sur cette œuvre.
Rien dans ce contrat ne diminue ou ne restreint le droit moral de l'auteur ou des auteurs.
Cette documentation est basée sur une réalisation du pôle de compétences EOLE. Les documents d'origines sont disponibles sur le site.
EOLE est un projet libre (Licence GPL).
Il est développé par le pôle de compétences EOLE du ministère de l'Éducation nationale, rattaché à la Direction des Systèmes d'Information et des Infrastructures de L'académie de Dijon (DS2i).
Pour toute information concernant ce projet vous pouvez nous joindre :
Documentation sous licence Creative Commons by-nc-sa - EOLE (http ://eole.orion.education.fr)
2
● Par courrier électronique : [email protected]
● Par FAX : 03-80-44-88-10
● Par courrier : EOLE-DS2i - 2G, rue du Général Delaborde - 21000 DIJON
● Le site du pôle de compétences EOLE : http://eole.orion.education.fr
S ommaire
Préambule...5
I eole-pacemaker...6
II Configuration de la haute disponibilité...7
Glossaire...13
Annexe...14
1 Commandes crm... 14
Documentation sous licence Creative Commons by-nc-sa - EOLE (http ://eole.orion.education.fr)
S o m m a ir e
4
P réambule
EOLE propose un service de haute disponibilité dont le rôle principal est de garantir la disponibilité d'un service et son bon fonctionnement.
Il est possible, depuis l'interface de configuration du module, d'activer ou non ce service.
P ré a m b u le
I eole-pacemaker
Le paquet eolepacemaker permet la mise en place d'un service de haute disponibilité*.
Logiciels et services
Le paquet eolepacemaker s'appuie principalement sur le service Corosync*.
Historique
A la base, le service de haute disponibilité était uniquement disponible sur le module Sphynx via le service Heartbeat. Celui-ci se fait maintenant via les logiciels Corosync* et Pacemaker. Le service a été adapté afin d'être installé sur n'importe quel module EOLE, y compris en mode une carte.
Conteneurs
Le service s'installe sur le serveur maître.
Documentation sous licence Creative Commons by-nc-sa - EOLE (http ://eole.orion.education.fr)
e o le -p a c e m a k e r
6
II Configuration de la haute disponibilité
EOLE propose un service de haute disponibilité dont le rôle principal est de garantir la disponibilité d'un service et son bon fonctionnement.
Il est possible, depuis l'interface de configuration du module, d'activer ou non ce service.
C o n fi g u ra ti o n d e l a h a u te d is p o n ib il it é
La génération de la configuration se fait à l'aide du script appliquer_hautedispo.
Pacemaker permet de faire un cluster* de machines en haute disponibilit*é, dans notre cas l'implémentation du logiciel permet un cluster de deux machines (maître/esclave ou actif/passif). Chaque machine est un
"node" du cluster.
Il est recommandé d'utiliser une interface réseau dédiée pour le dialogue inter node.
Activer le service de haute disponibilité
Pour activer le service de haute disponibilité il faut se rendre dans l'onglet Services et passer la variable Activer la haute disponibilité à maitre ou esclave selon ce que vous souhaitez mettre en place.
Il faut ensuite paramétrer le service de haute disponibilité dans l'onglet Hautedispo.
La haute disponibilité en temps que maître Paramétrage de corosync
Documentation sous licence Creative Commons by-nc-sa - EOLE (http ://eole.orion.education.fr)
C o n fi g u ra ti o n d e l a h a u te d is p o n ib il it é
8
Sur le module Sphynx l'interface Interface de dialogue inter node est prédéfinie sur eth2.
Il n'est pas nécessaire de changer cette valeur.
Sur Eolebase on peut choisir une interface dédiée au dialogue inter-node.
Le Nom de machine du node maitre doit contenir le Nom de la machine configuré renseigné sur le node esclave.
Adresse IP du node esclave sur l'interface de dialogue inter node permet de saisir l'adresse IP du node esclave.
Activer l'envoi de mail lors d'une bascule de node permet de recevoir une alerte lorsque les ressources sont basculées d'un node à l'autre. Le champ Destinataire du mail est pré-rempli par la valeur Adresse mail du réception pour les comptes système défini dans l'onglet Messagerie. Cette valeur, au format adresse électronique, peut être changée si les alertes doivent être envoyées à une autre personne. Il est également possible de choisir le sujet du courrier électronique dans
C o n fi g u ra ti o n d e l a h a u te d is p o n ib il it é
Remarque
Le Nom de machine du node esclave et l'Adresse IP du node esclave sur l'interface de dialogue inter node permettent de renseigner le fichier hosts du module.
Ressources de type IP Virtuelle
La ressource de type IP virtuelle permet à un cluster d'être accessible via cette adresse sur l'un des deux nodes. Si l'un des nodes n'est plus accessible, l'autre prend le relais avec cette même adresse IP.
Sur le module Sphynx il faut configurer les ressources de type IP Virtuelle pour les interfaces eth0 et eth1. Les étapes suivantes sont donc à réaliser pour les onglets Valeur 1 et Valeur 2.
Le Nom de la ressource apparaît dans les logs et à l'exécution des commandes crm et crm_mon. Sur le module Sphynx la valeur Nom de la ressource est pré-définie et ne doit surtout pas être modifiée.
Sur Eolebase ce champ peut contenir le nom de votre choix sans espace et sans caractères spéciaux.
Choisir l'interface sur laquelle on veut de la haute disponibilité dans la liste Interface de l'adresse IP redondée (VIP) et lui attribuer, dans le champ Adresse IP redondée (VIP), une adresse IP disponible sur le même réseau.
Commandes crm
Ressources de type Service
Le Nom de la ressource apparaît dans les logs et les commandes crm et crm_mon.
Sur le module Sphynx la valeur Nom de la ressource est pré-définie et ne doit surtout pas être modifiée.
Sur Eolebase ce champ peut contenir le nom de votre choix sans espace et sans caractères spéciaux.
Documentation sous licence Creative Commons by-nc-sa - EOLE (http ://eole.orion.education.fr)
C o n fi g u ra ti o n d e l a h a u te d is p o n ib il it é
10
Ressources de type Ping
Le Nom de la ressource apparaît dans les logs et les commandes crm et crm_mon.
Sur le module Sphynx la valeur Nom de la ressource est pré-définie et ne doit surtout pas être modifiée.
Sur Eolebase ce champ peut contenir le nom de votre choix sans espace et sans caractères spéciaux.
Synchronisation des fichiers de configuration sur le node esclave
La haute disponibilité en temps qu'esclave Paramétrage de corosync
C o n fi g u ra ti o n d e l a h a u te d is p o n ib il it é
Sur le module Sphynx l'interface Interface de dialogue inter node est prédéfinie sur eth2.
Il n'est pas nécessaire de changer cette valeur.
Sur Eolebase on peut choisir une interface dédiée au dialogue inter-node.
Le Nom de machine du node maitre doit contenir le Nom de la machine configuré renseigné sur le node maître.
Adresse IP du node maitre sur l'interface de dialogue inter node permet de saisir l'adresse IP du node maître.
Remarque
Le Nom de machine du node maitre et l'Adresse IP du node maitre sur l'interface de dialogue inter node permettent de renseigner le fichier hosts du module.
Documentation sous licence Creative Commons by-nc-sa - EOLE (http ://eole.orion.education.fr)
C o n fi g u ra ti o n d e l a h a u te d is p o n ib il it é
12
G lossaire
Cluster Un cluster est un terme anglophone qui est utilisé pour parler de grappe ou de bloc suivant le contexte dans lequel il est utilisé :
● un cluster de serveur est une grappe de serveur constituée au minimum de 2 machines qui partage des ressources communes la plupart du temps à travers le réseau ;
● un cluster peut également être un bloc, un ensemble de données ou d'éléments présentant des similarités ;
● un cluster peut être un système informatique composé d'unité de calcul permettant une répartition de charge et une optimisation des traitements à réaliser pour effectuer des calculs.
Corosync Corosync est un moteur de cluster. Un cluster est un groupe de deux ou plusieurs machines.
Haute
Disponibilité
La haute disponibilité c'est garantir la disponibilité d'un service et son bon fonctionnement.
G lo s s a ir e
A nnexe
1 Commandes crm
Cette partie n'est pas documentée #fixme
Documentation sous licence Creative Commons by-nc-sa - EOLE (http ://eole.orion.education.fr)