TARDITI Richard Mise en place d une Haute Disponibilité



Documents pareils
Haute disponibilité d'un service Web dynamique

La haute disponibilité dans la vraie vie

GOUTEYRON ALEXIS. SIO2 N candidat: UEpreuve E4. USituation professionnelle 2. serveurs de fichiers. Uen haute disponibilité

Configuration matériel. Tâche 2 : Installation proprement dite de l application sur un serveur de test virtualisé sous VmWare Workstation.

La Haute disponibilité des modules EOLE

Agenda. Bienvenue. Agenda

Redondance de service

Haute disponibilité d'un serveur FTP

Solution Haute Disponibilité pour Linux

But de cette présentation. Serveur DHCP (Application à CentOS) Cas des machines virtuelles. Schéma de principe. Hainaut P

Service WEB, BDD MySQL, PHP et réplication Heartbeat. Conditions requises : Dans ce TP, il est nécessaire d'avoir une machine Debian sous ProxMox

Retour d expérience sur la mise en place d une solution de répartition de charge entièrement libre.

Administration de Parc Informatique TP03 : Résolution de noms

Préparation à l installation d Active Directory

JOMARON Sébastien BTS SIO 2012/2014. Titre de l activité: Surveiller des hôtes et des services avec NAGIOS

Tests de montée en charge & Haute disponibilité

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server 3, 3.5

Vade mecum installation et configuration d une machine virtuelle V5.1.0

Cloud Computing Cluster WebDAV Haute Disponiblité

LOAD-BALANCING AVEC LINUX VIRTUAL SERVER

1 DHCP sur Windows 2008 Server Introduction Installation du composant DHCP Autorisation d'un serveur DHCP...

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server

FORMATION. Linux-HA et les systèmes de Cluster

Haute disponibilité avec PostgreSQL

Documentation utilisateur, manuel utilisateur MagicSafe Linux. Vous pouvez télécharger la dernière version de ce document à l adresse suivante :

OpenMediaVault installation

Projet tuteuré. Redondance de serveur de téléphonie sur IP avec le logiciel Asterisk

Les serveurs WEBUne introduction

Installation d'un serveur FTP géré par une base de données MySQL

VMWare Infrastructure 3

Table des matières Hakim Benameurlaine 1

LIVRE BLANC PRODUIT. Evidian SafeKit. Logiciel de haute disponibilité pour le clustering d application

Table des matières Hakim Benameurlaine 1

ASR4 Réseaux Département Informatique, IUT Bordeaux 1. DHCP Prénom : Nom : Groupe :

Ce TP consiste à installer, configurer et tester un serveur DNS sous Linux. Serveur open source : bind9 Distribution : Mandriva

Serveur Linux : FTP. Mise en place d un service FTP sous Linux. Bouron Dimitri 20/04/2014

Maintenance et gestion approfondie des Systèmes d exploitation Master 2 SILI. Année universitaire David Genest

ParallelKnoppix. Majid Hameed. Copyright 2005 Majid Hameed. Copyright 2005 Gauthier Savart. Copyright 2005 Joëlle Cornavin

Situation professionnelle n X

Windows sur Kimsufi avec ESXi

Petit guide pour l installation de CVW sous Linux

Année Universitaire ième année IMAC Mardi 6 janvier Cloud computing Travaux Pratiques

PPe jaune. Domingues Almeida Nicolas Collin Leo Ferdioui Lamia Sannier Vincent [PPE PROJET FTP]

Le cluster à basculement

II- Préparation du serveur et installation d OpenVpn :

Architecture de la plateforme SBC

Capture, Filtrage et Analyse de trames ETHERNET avec le logiciel Wireshark. Etape 1 : Lancement des machines virtuelles VMWARE et de Wireshark

Gestion d identités PSL Exploitation IdP Authentic

WebSphere MQ & Haute Disponibilité

Standard. Manuel d installation

ROUTAGE. Répondez aux questions suivantes : (A chaque fois pour XP et pour Debian)

Mise en place d un cluster. De basculement. Et DHCP Failover. Installation. Préparation. Vérification

Tutorial Terminal Server sous

Configuration serveur pour le mode L4 DSR

Lancement de la simulation SIMBA

Monter automatiquement des disques distants ou locaux avec automount/autofs

Environnements informatiques

Titre: Version: Dernière modification: Auteur: Statut: Licence:

1 Configuration réseau des PC de la salle TP

PRO CED U RE D I N STALLATI O N

Atelier : Virtualisation avec Xen

1. La plate-forme LAMP

TP LINUX : MISE EN PLACE DU SERVEUR DE MESSAGERIE QMAIL

Activité 1 : Création et Clonage d'une première machine virtuelle Linux OpenSuSE.

DOMAIN NAME SYSTEM. CAILLET Mélanie. Tutoriel sur le DNS. Session Option SISR

La Continuité d Activité

Olympiades canadiennes des métiers et des technologies

Administration Réseau sous Ubuntu SERVER Serveur DHCP

ALOHA Load Balancer 2.5. Guide de démarrage rapide. EXCELIANCE ALOHA 2.5 Guide de démarrage rapide 30/01/2008 1/17

La replication dans PostgreSQL

Dynamic Host Configuration Protocol

Bind, le serveur de noms sous Linux

Sendmail milter/greylisting

MISE EN PLACE DU FIREWALL SHOREWALL

Proce dure Installation Cluster de basculement SQL Server 2005

CommandCenter Secure Gateway

Projet Système & Réseau

Consolidation. Grid Infrastructure avec la 11gR2

TP LINUX : MISE EN RÉSEAU D UN SERVEUR LINUX

MOBILITE. Datasheet version 3.0

Chapitre 2 Machines virtuelles et services

Bac Professionnel Systèmes Electroniques Numériques

La haute disponibilité

Le Ro le Hyper V Troisie me Partie Haute disponibilite des machines virtuelles

D r o i t s D r o i t s Q u i z z : i n t e r n e t t e x t e

Manuel de l Administrateur

Présentation de l outil d administration de réseau Nagios

Manuel d administration de Virtual Box MANUEL D UTILISATION VIRTUAL BOX

La continuité de service

Utilisation du plugin AppliDis SLB (Smart Load Balancing)

contact@nqicorp.com - Web :

Installation d ORACLE 10g sous Debian Etch

Administration de Parc Informatique TP07 : Installation de Linux Debian

MANIPULATION DE LA TABLE DE ROUTAGE IP. par. G.Haberer, A.Peuch, P.Saadé

Universal Robots. Fiche Méthode : Installation du simulateur Polyscope

Mise en place Active Directory, DNS Mise en place Active directory, DNS sous Windows Serveur 2008 R2

PLATE-FORME DE CLOUD COMPUTING SLAPOS. Intégration d applications

Mise en place d'un Réseau Privé Virtuel

MISE EN PLACE D UN FIREWALL ET D UN SERVEUR PROXY SOUS LINUX MANDRIVA.

KAJOUT WASSIM INTERNET INFORMATION SERVICES (IIS) 01/03/2013. Compte-rendu sur ISS KAJOUT Wassim

Transcription:

TARDITI Richard Mise en place d une Haute Disponibilité Dans le cadre du projet GSB j ai mis en place un cluster de deux machines virtuelles Apache sous Linux, avec une haute disponibilité produite grâce à Heartbeat et Pacemaker.

1) Introduction La «haute disponibilité» regroupe de nombreuses techniques et processus permettant de garantir un certain pourcentage de disponibilité d'un service. Par exemple, un taux de 99 % de disponibilité assure une disponibilité d environ 361 jours sur 364 alors qu un taux de 99.5 % assure une disponibilité de plus de 363 jours sur 365. La réalité économique fait que les organisations tendent de plus en plus vers des taux encore plus grande comme 99.9 % ou 99.99 % notamment sur certains services critiques. En effet, les conséquences d une interruption de services sont innombrables et peuvent coûter très cher à tous point de vue. 2) Fonctionnement L algorithme utilisé pour la Haute Disponibilité est basé sur la tachycardie, il s appelle «Heartbeat». Un cluster est mis en place de minimum 2 machines, il y aura une machine actif est une autre en écoute, la machine actif émet des battements de cœur qu écoute l autre machine, lorsque le cœur de la machine actif ne bat plus il est considéré comme mort, c est donc la machine en écoute qui bascule et émet des battements de cœur et l autre machine se met en écoute. Cela permet que n importe quelle machine tombe en panne sans pénaliser l ensemble. 3) Installation Dans ma situation j ai installé «Heartbeat» sur une Debian Wheezy à l aide de la commande : Apt-get install heartbeat En complément de Heartbeat j ai utilisé «Pacemaker» qui s installe en même temps que vous installez Heartbeat, c est un gestionnaire de ressources. Il est chargé de créer, démarrer, arrêter et superviser les ressources du Cluster c est-à-dire les services gérés en Cluster et donc inclus dans la continuité de services. 4) Configuration Heartbeat est installé en démon et il se charge, grâce à Pacemaker, d activer l adresse IP virtuelle sur le serveur qui joue le rôle de maître ainsi que le lancement des services mis en haute disponibilité. Ces derniers, lancés par Pacemaker, doivent donc être supprimés du démarrage automatique de Linux. Exemple pour apache : Update-rc.d -f apache2 remove Les fichiers de configurations se trouvent dans le répertoire «/etc/ha.d/» et dans «/var/lib/heartbeat/crm/». C est dans le fichier «ha.cf» que l on indiquera qu il travaillera avec Pacemaker : 1

C est dans le fichier «authkeys» qu est déterminé le niveau de sécurité des échanges entre les différents nœuds du Cluster. Lorsque ces informations passent par le réseau, il vaut mieux crypter l échange avec md5 sha. Dans ce cas, il faut fournir une passphrase : Il ne faut pas oublier de restreindre les droits de lectures/écritures qu à l utilisateur root : Chmod 600 /etc/ha.d/authkeys Une fois tout ceci fais j ai tout simplement cloné mon premier serveur et configuré par la suite pour obtenir mon serveur en écoute. Après avoir lancé heartbeat sur les deux machines on peut vérifier s il est bien lancé : 2

Service heartbeat status Nous obtenons ceci sur les deux machines : Grâce à quelque commande utile j ai pu vérifier l état du Cluster : Crm status Crm_mon Cette commande permet de suivre l évolution de la configuration du Cluster en temps réelle. Crm configure show 3

Crm_verify L -V Cette commande permet de vérifier la validité du fichier de configuration XML, la première exécution de cette commande génère des erreurs. Par mesure de simplicité j ai désactivé STONITH avec la commande suivante : Crm configure property stonith-enabled=false Persiste encore un petit problème à régler concernant le QUORUM qui est le nombre minimum de nœuds en ligne pour être capable de valider une décision. Dans le cas d un Cluster avec Pacemaker, il faut que plus de la moitié des nœuds soit en ligne. Avec un Cluster à deux nœuds, il n y a plus de QUORUM dès qu un nœud est perdu. Il faut donc demander à Pacemaker d ignorer le QUORUM dans cette situation car le fonctionnement par défaut, quand le QUORUM n est pas atteint, est de couper toutes les ressources. Crm configure property no-quorum-policy= ignore 4

5) Création d une source La création d une ressource s effectue avec une entrée nommée «primitive» dans la CIB. On trouvera au minimum dans la commande : Crm configure primitive nom de la resource espace de nom:nom du script Il existe deux type de script : -OCF, qui est un script développé pour Pacemaker. Ils sont pour la plupart dans le répertoire «/usr/lib/ocf/resource.d/heartbeat ou /usr/lib/ocf/resource.d/pacemaker» -LSB, c est un script de démarrage sur Linux présent dans «/etc/init.d». Le type lsb:service utilise au minimum les capacités start, stop, status des scripts de démarrage système de /etc/init.d. Pour en vérifier la compatibilité minimum, les scripts doivent répondre à une commande start, stop et status. La configuration passe donc par la commande «crm» que l on peut utiliser directement en ligne de commande ou en interactif. La commande se propage sur tous les nœuds et modifie le fichier xml sur chaque nœud. J ai créé un service que j ai appelé «IPFailover» qui fais le basculement de l adresse IP virtuelle du serveur maître vers le serveur en écoute si le premier venait à tomber. Pour attribuer une adresse IP virtuelle j ai entré la commande suivante : Crm configure primitive IPFailover ocf:heartbeat:ipaddr2 params ip= 192.168.1.5 cidr_netmask= 255.255.0.0 nic= eth2 iflabel= VIP Primitive : argument pour ajouter une primitive regroupant plusieurs valeurs indiquant au Cluster quels scripts utiliser pour la ressource, où le trouver et à quel standard il correspond. IPFaillover : le nom de la ressource (il est évidemment libre...) Ocf : classe de la ressource (ça pourrait donc aussi être lsb) Hearbeat : fournisseur de la ressource IPaddr2 : ressource gérant les adresses IPv4 virtuelles ==> le script appelé Params : déclaration des paramètres nécessaires à la ressource ip= «192.168.1.5» : nom et valeurs du paramètre «ip» cidr_netmask= «255.255.0.0» : masque de sous-réseau nic= «eth2» : carte réseau sur laquelle est appliquée l'adresse IP virtuelle iflabel= «VIP» permet de donner un label à la carte réseau virtuelle. 5

Grâce à la commande «crm_mon» on peut constater la configuration de la ressource : On constate que le service est lancé aléatoirement car il a été lancé sur le serveur en écoute, vérifions l adressage ip avec la commande «ip addr show» : J ai pu modifier ma ressource grâce à la commande «crm configure edit IPFailover» et j ai rajouté les paramètres suivant «op monitor interval= 30s timeout= 20s» : op définit des options et monitor est l action de monitoring du Pacemaker. J ai par la suite défini une contrainte «locative» qui va définir une préférence d une ressource sur un nœud, on migre la ressource sur le nœud que l on veut et Pacemaker comprend qu on a une préférence pour ce nœud : Crm resource move IPFailover server Le service est donc bien sur le bon nœud, nous allons à présent simuler une panne sur le serveur maître en le mettant en «standby» : 6

Crm node standby L adresse IP à bien été récupéré par le serveur «hdserver», relançons le serveur maître : Crm node online Le serveur maître étant à nouveau opérationnel il reprend son statut. J ai ensuite créé une nouvelle ressource que j ai nommé «serviceweb», nous allons la configurer en interactif : Crm configure Primitive serviceweb ocf:heartbeat:apache params configfile= /etc/apache2/apache2.conf op monitor interval= 60s op start timeout= 40s op stop timeout= 40s Commit quit Avant de valider la ressource on peut la consulter grâce à la commande : Crm configure show 7

A la validation il est possible de rencontrer cette avertissement «WARNING : serviceweb specified timeout 40s for stop is smaller than the advised 60s», on ignorera cette avertissement car il ne nui pas à la ressource. Sur la console avec «crm_mon» nous pouvons constater que la ressource est bien apparut : Mais comme on peut le voir la ressource n est pas démarré sur le bon nœud, par défaut Pacemaker répartit les services sur les nœuds. Pour que les deux service soient sur le même nœud on va les mettre dans un groupe : Crm configure Group servserver IPFailover serviceweb meta migration-threshold= 5 Commit quit 8

Nous avons donc créé un groupe nommé servserver qui regroupe les deux resource qui seront toujours démarrées dans l ordre des entrées du groupe. Les deux services sont à présent sur le même nœud nous allons simuler une panne sur le serveur maître: Le serveur esclave à bien pris le relai des deux ressources. 9