HA/SLA
HA COUR
TP – Haute Disponibilité (HA)
Table des matières - Définitions d’éléments servant à la HA - Mise en
place d’une haute disponibilité sur un serveur web - Prérequis -
Installation de Corosync et de Pacemaker
Définitions d’éléments servant à la HA
1) Qu’est-ce que la haute disponibilité ? La haute disponibilité (HA)
est le fait qu’un système puisse être accessible au plus proche de
100 % du temps, donc avec le moins d’interruption possible. La haute
disponibilité désigne aussi la capacité d’un système à rester
accessible et fiable presque 100 % du temps. Un système hautement
disponible doit pouvoir résister à des interruptions, qu’il s’agisse
de temps d’arrêt planifiés ou de sinistres à grande échelle.
Un système HA répond généralement à deux critères clés : - Il doit
rester disponible quasiment en permanence. - Il doit satisfaire un
ensemble d’attentes prédéfinies de la part des utilisateurs.
2) Pourquoi mettre en place la haute disponibilité ? La HA permet à des
utilisateurs d’un service qu’il soit accessible au plus proche de
100 % du temps et permet donc d’assurer la non interruption d’une
activité ayant besoin d’accéder en continu à un système.
3) Qu’est-ce que “SLA” ? Le SLA, pour Service Level Agreement ou accord
de niveau de service, est le taux de disponibilité d’un service en
pourcentage et sur une année.
C’est un contrat formel entre un fournisseur de services informatiques
(interne ou externe) et un client (entreprise ou utilisateur final), qui
définit : - les niveaux de service attendus - les engagements de
performance - les méthodes de mesure de ces performances
4) En quoi cela concerne la haute disponibilité ? Le SLA concerne la
haute disponibilité car il permet d’établir la complexité du système
d’HA à mettre en place, selon si on souhaite une disponibilité de
99.9 %, 99.99 %, 99.999 %, etc. La SLA est en partie basée sur la
haute disponibilité car si le site est indisponible, il n’y a plus
de disponibilité.
5) Qu’est-ce que la réplication ? La réplication est le fait qu’un
élément soit recopié à l’identique pour que la copie serve à
remplacer ce dernier en cas de problème. C’est une duplication d’un
serveur ou d’un service à des fins de haute disponibilité.
6) Qu’est-ce qu’un cluster ? Un cluster est un groupe d’éléments
regroupés qui fonctionnent ensemble. Un cluster informatique est un
groupe d’ordinateurs ou de serveurs indépendants, interconnectés,
qui fonctionnent comme un seul système cohésif.
7) Qu’est-ce que Corosync ? Corosync est un service permettant de gérer
des clusters de machines et de gérer leur accessibilité. C’est un
service qui permet de faire fonctionner la haute disponibilité.
Dans le cadre de la HA : - Il gère le serveur maître et les serveurs
secondaires - En cas de panne, un serveur secondaire prend le relais
Fonctionnement : - Chaque serveur envoie régulièrement un message appelé
heartbeat - Ces messages passent par un lien Corosync - Si le serveur
maître ne répond plus, un vote est organisé
En cas d’absence de majorité : - Un Quorum permet de trancher
8) Qu’est-ce qu’une IP virtuelle ? Une adresse IP virtuelle est une
adresse IP non liée à une interface physique mais à un service ou un
cluster. Elle permet à plusieurs machines d’être accessibles via une
seule adresse IP.
9) Qu’est-ce qu’une IP failover ? Une IP failover est une adresse IP
pouvant être transférée rapidement d’un serveur à un autre sans
interruption de service.
Elle permet : - un basculement rapide - la continuité de service - la
redondance en cas de panne
10) Fonctionnement de l’IP Failover dans la HA (IP failover utilisée
pour basculer rapidement vers un serveur de secours en cas de panne)
11) Qu’est-ce que Pacemaker ? Pacemaker est un logiciel open source de
gestion de cluster haute disponibilité. Il permet de :
- démarrer, arrêter et superviser les ressources
- garantir la continuité des services
Il fonctionne souvent avec Corosync, qui gère la communication entre les
nœuds.
12) Qu’est-ce qu’une ressource (Pacemaker) ? Une ressource est un
service ou un élément que le cluster doit gérer pour assurer la
haute disponibilité. Exemples : serveur web (Apache, Nginx), base de
données, etc.
13) Qu’est-ce qu’un script OCF ? Un script OCF (Open Cluster Framework)
est un script utilisé comme agent de ressource. Il permet :
- de démarrer / arrêter un service
- de surveiller son état
14) Qu’est-ce qu’un CIB ? (CIB mentionné mais non défini dans les
textes)
Mise en place d’une haute disponibilité sur un serveur web
Prérequis Il faut : - un serveur LAP avec un service web (ex : GLPI) -
un VHOST configuré (nom de domaine + IP) - un serveur de base de données
fonctionnel
Reprendre à : « Installation de GLPI à partir de l’interface web »
Installation de Corosync et de Pacemaker
1. Installer les paquets : apt install corosync pacemaker pcs
2. Cloner le serveur ou en créer un second avec les mêmes services
3. Générer une clé : corosync-keygen
4. Copier la clé vers le serveur esclave : scp /etc/corosync/authkey
root@:/etc/corosync/authkey
Configuration de Corosync
Modifier le fichier : /etc/corosync/corosync.conf
Dans le bloc totem : - ajouter : secauth: on - modifier : cluster_name -
ajouter : transport: udpu
Dans le bloc nodelist :
- Ajouter un node pour le serveur maître :
- ring0_addr : IP du serveur maître
- name : nom
- Ajouter un node pour le serveur esclave avec ses informations