80
Haute disponibilité Haute Disponibilité Haute disponibilité et Tolérance de Panne Date 13 Octobre 2009 Groupe 14 Auteur(s) BOUKHOBZA Elior Responsable Mr. Alain Stephan Promo TCOM 2010

Haute Disponibilité et Tolérance de Panne

Embed Size (px)

Citation preview

Page 1: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

Haute DisponibilitéHaute disponibilité et Tolérance de

PanneDate 13 Octobre 2009Groupe 14Auteur(s) BOUKHOBZA EliorResponsable Mr. Alain StephanPromo TCOM 2010

Page 2: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 2

Plan

I. DéfinitionsII. ClusteringIII. Load BalancingIV. RedondanceV. Réplication des donnéesVI. Conclusion

Page 3: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 3

Introduction

What is the High Availability?o A Highly Available material is a material

providing full-time availability even when failures occurs.

What is the Fault Tolerance?o The Fault Tolerance is the capacity of a material

to ensure the data availability in case of a failure occurs. It provides full-time checking and redundancy devices to perform high availability.

Page 4: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 4

Introduction

Why high availability?o In a company, the information system requires to be

fully available 100% (or most) of the time.o If a failure occurs in the system (device crash, human

error…), or in the building (fire, flooding…), or even in the region (earthquake, war…), the IS needs to be available and functional otherwise it would be fatal for the company.

o That’s why having a material fully available is vital for a company to ensure its business without fear of failures or disasters in the IS.

Page 5: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 5

DÉFINITIONS

Page 6: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 6

DéfinitionsPlan

1. Critères DICP2. Indicateurs de disponibilité3. Classification en Tiers

Page 7: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 7

DéfinitionsCritères DICP

Critères DICP-Ro On classifie la sécurité d’un système grâce aux « Critères DICP », c’est-

à-dire:o D: Disponibilité

C’est-à-dire que le système doit pouvoir être disponible à toute heure.o I: Intégrité

C’est la capacité au système d’assurer que les informations sont exactes.o C: Confidentialité

C’est la capacité au système d’assurer que les données ne peuvent être accédées que par les personnes ayant accès.

o P: Preuve La preuve concerne la non répudiation, c’est-à-dire l’impossibilité de nier avoir

effectué telle ou telle action.o On parle aussi de DICP-R, R pour règlementation. Ce sont les règles

que le système doit respecter.

Page 8: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 8

DéfinitionsIndicateurs de disponibilité (1/3)

MTTF, MTBF, MTTR, MUT, MDTo MTTF: Mean Time To Failure (Temps Moyen Avant Panne)

C’est le temps moyen avant l’apparition d’une panne d’un composant du système. On souhaite que cet indicateur soit le plus grand possible.

o MTBF: Mean Time Between Failures (Temps Moyen Inter-pannes)

C’est le temps moyen entre deux pannes survenant sur un composant du système. Plus cet indicateur est grand, plus le système est considéré comme fiable.

o MTTR: Mean Time To Repair (Temps Moyen de Réparation) C’est le temps moyen nécessaire à la réparation d’un composant

survenu lors d’une panne. A l’inverse, on souhaite que cet indicateur soit le plus petit possible.

o MTBF = MTTF + MTTR.

Page 9: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 9

Définitions Indicateurs de disponibilité (2/3)

o MDT: Mean Down Time (Temps Moyen d’indisponibilité) C’est le temps moyen d’indisponibilité d’un

composant lors d’une panne quelconque.o MUT: Mean Up Time (Temps Moyen de

disponibilité) C’est le temps moyen de disponibilité du composant

après sa réparation avant qu’il ne retombe en panne.o MTBF = MUT + MDTo Disponibilité = MTTF / MTBF

Page 10: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 10

DéfinitionsIndicateurs de disponibilité (3/3)

Taux de disponibilité Durée d’indisponibilité sur un an

97% 11 jours

98% 7 jours

99% 3 jours et 15 heures

99,9% 8 heures et 48 minutes

99,99% 53 minutes

99,999% 5 minutes

99,9999% 32 secondes

Source: Wikipedia

Page 11: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 11

DéfinitionsClassification en Tier (1/3)

Classification en Tier:o Une autre définition de la disponibilité est la

classification en Tier, créé par l’Uptime Institute.o Permet de classifier les datacenter selon un

niveau de disponibilité entre 99% et 100%.o Plus le matériel a un niveau de Tier élevé, plus il

est coûteux, mais aura un meilleur taux de disponibilité.

Page 12: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 12

DéfinitionsClassification en Tier (2/3)

• 1 alimentation électrique/refroidissement• Pas de redondance des composants• Taux de disponibilité de 99,671%Tier I: • 1 alimentation électrique/refroidissement• Redondance des composants• Taux de disponibilité de 99,741%Tier II: • Redondance électrique/refroidissement mais 1 seul actif• Redondance des composants• Taux de disponibilité de 99,982%Tier III: • Redondance électrique/refroidissement, tous actifs• Redondance des composants• Taux de disponibilité de 99,995%Tier IV:

Page 13: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 13

DéfinitionsClassification en Tier (3/3)

Classification en Tiers de l’Uptime Institute

Page 14: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 14

CLUSTERING

Page 15: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 15

ClusteringPlan

1. Définition2. Fonctionnalités3. Types de clusters4. Architectures en cluster5. Détection de pannes6. Outils

Page 16: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 16

ClusteringDéfinition (1/2)

Cluster = Grappe de serveurs ou Ferme de serveurs.Le principe d’un cluster est de regrouper plusieurs serveurs indépendants appelés nœuds en un seul et même serveur, de façon transparente pour le client.Ainsi, si l’un des nœuds du cluster tombe, le service continue, assurant ainsi la disponibilité des services.Les nœuds n’ont pas besoin d’être proches physiquement. Il suffit qu’ils soient interconnectés entre eux par un ou plusieurs réseaux (LAN, WAN…) pour en faire un cluster.

Page 17: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 17

ClusteringDéfinition (2/2)

Simple architecture en cluster

Page 18: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 18

ClusteringFonctionnalités

Les fonctionnalités que doit offrir un cluster sont:o Basculement de service: Lors d’une panne, le service est

transféré sur un nœud fonctionnel: Fail Over Service.o Détection de pannes: Guetter les pannes pour basculer

le service sans interruption.

Elles sont en général couplées à d’autres fonctionnalités pour assurer la disponibilité:o Distribution de chargeo Réplication des donnéeso Intégrité des données…

Page 19: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 19

ClusteringTypes de clusters

On distingue plusieurs types de clusters, selon les fonctionnalités: o Clusters de haute disponibilitéo Clusters de calculo Clusters d’équilibrage de chargeo Clusters d’applications…

Différentes configurations selon le type de services:o Actif/Actifo Actif/Passifo N+1o N+Mo N to 1o N to N

Page 20: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 20

ClusteringArchitectures en cluster (1/5)

Configuration « Actif/Passif »:o Cluster de deux nœuds.o Le nœud principal (ou nœud maître) exécutant les services.o Le nœud secondaire (ou nœud esclave), de secours.o Un ou plusieurs liens dédiés entre les deux nœuds pour le

basculement de service.

Adressage IP:o Chaque nœud a sa propre adresse IP réelle.o Au cluster est associée une adresse IP virtuelle (ou alias IP),

qui va pointer sur le nœud actif (NAT).o Si le nœud actif tombe, l’alias IP pointe sur le nœud de

secours.

Page 21: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 21

ClusteringArchitectures en cluster (2/5)

Cluster et basculement de service

Page 22: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 22

ClusteringArchitectures en cluster (3/5)

Principe:o Le client entre l’@IP virtuelle 192.168.X.254o Cette adresse pointe vers le nœud principal A.o Le nœud A tombe, B détecte que A est tombé.o Grâce au lien dédié, le service bascule vers B.o L’adresse IP virtuelle pointe alors sur B.o Lorsque A est réparé, le service bascule vers A et l’@IP virtuelle

pointe vers A.o Le client ne détecte aucun changement.

Page 23: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 23

ClusteringArchitectures en cluster (4/5)

Configuration Actif/Actif:o Les deux nœuds sont actifs et se répartissent la charge.o Si l’un des nœuds tombe, le service est basculé sur le nœud restant.o Lorsque le nœud défaillant fonctionne, la charge est à nouveau répartie

entre les deux nœuds.

Configuration N+1:o Architectures de N nœuds, et un nœud de secours.o Si l’un des nœuds tombe, le service est basculé sur le nœud de secours.o Lorsque le nœud est rétabli, il devient le nœud de secours.o SPOF si plusieurs nœuds tombent en même temps.

Configuration N+M:o N nœuds actifs et M nœuds de secours.o Le nombre de nœuds de secours dépend du degré de disponibilité requis

pour assurer le service.

Page 24: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 24

ClusteringArchitectures en cluster (5/5)

Configuration N to 1:o A la différence du N+1, lorsque le nœud défaillant est

rétabli, le service bascule vers ce nœud.o Deux basculements de service.

Configuration N to N:o Pas de nœuds de secours.o Si un des nœuds tombe, la charge est redistribuée sur les

N-1 nœuds restants.o Lorsque le nœud est rétabli, la charge est redistribuée en

conséquence.o Nécessite des nœuds à plus grande capacité.

Page 25: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 25

ClusteringDétection de pannes

Détection de pannes :o Requêtes Push:

Le nœud actif envoie des signaux au nœud passif à intervalles réguliers. Si le nœud passif ne reçoit pas de signaux au bout d’un certain temps, il

détermine qu’il y’a panne et active le basculement de service.o Requêtes Pull:

Le nœud passif envoie des signaux au nœud actif à intervalles réguliers. Si il ne reçoit pas de réponse, il continue d’émettre des signaux car ca

peut provenir d’un problème sur le lien. Au bout d’un certain nombre de tentatives, il détermine qu’il y’a panne

et active le basculement de service.o C’est communément appelé « Heartbeat ».

Page 26: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 26

ClusteringOutils (1/3)

Heartbeat: Outil de surveillance des systèmes.Outil implémentant la surveillance et le basculement de services à l’aide de scripts.Caractéristiques:o Les services (applications) sont démarrés avec Heartbeat sur le nœud actif.o Il permet d’arrêter et de démarrer les services manuellement, dans ce cas les

services sont basculés sur le nœud de secours.o Cet outil permet de détecter les pannes matérielles et réseau et d’exécuter des

scripts de basculement en cas de panne.o Utilisé avec l’outil « Mon », on peut désormais faire de la surveillance

applicative.o Heartbeat permet aussi le contrôle d’une application « STONITH » (« Shoot

The Other Node In The Head »), procédé qui consiste à désactiver le nœud à distance en cas de problème.

Logiciel sous licence GPL, du projet « Linux-HA ».

Page 27: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 27

ClusteringOutils (2/3)

MON: Service Monitory DaemonC’est un démon de supervision des services. Il permet de détecter des défaillances applicatives et de les arrêter/redémarrer manuellement.Caractéristiques:o Marche/arrêt de serveurso Marche/arrêt de serviceso Consultation de l’état des serviceso Surveillance des ressourceso Envoi de tests (traps) pour tester l’état d’un service/serveur.

Il est utilisé avec Heartbeat pour faire de la surveillance applicative.Sous licence GPL.

Page 28: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 28

ClusteringOutils (3/3)

FailSafe: Outil similaire à Heartbeat, de la marque SGI.Permet de supporter jusqu’à des clusters de 16 nœuds.

Page 29: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 29

LOAD BALANCING

Page 30: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 30

Load BalancingPlan

1. Définitions2. Architectures de répartition de charge3. Algorithmes de répartition de charge4. Gestion des états de sessions5. Outils

Page 31: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 31

Load BalancingDéfinitions

Load Balancing : Equilibre de charge ou répartition de charge.Il consiste à distribuer la charge aux nœuds d’un cluster.Un load-balancer est un serveur qui dispose de différents algorithmes d’équilibrage de charge.Dans les architectures communes, ce serveur est redondé pour éviter les SPOF.Le load-balancing permet d’équilibrer le trafic réseau et d’assurer la disponibilité des services en dirigeant les requêtes vers les nœuds actifs.

Page 32: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 32

Load BalancingArchitectures (1/4)

Schéma classique d’une architecture load-balancée :o Un cluster de services.o Un cluster de load-balancers: un actif et un passifo Un lien dédié entre les deux load-balancers pour le basculement de

service.

Page 33: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 33

Load BalancingArchitectures (2/4)

Principe:o Le client s’adresse au load-balancer actif via

l’@IP virtuelle qui lui est fournie.o Le load-balancer actif relaye la requête vers le

ou les nœuds du cluster de services. o Pour la réponse, plusieurs solutions sont

possibles, dépendant de l’architecture.

Page 34: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 34

Load BalancingArchitectures (3/4)

Si le load-balancer agit comme une passerelle:o Utilisation du NAT pour

translater l’@IP virtuelle vers l’@IP réelle du serveur actif.

o Le serveur actif retourne la réponse au load-balancer.

o Le load-balancer renvoie alors la réponse au client.

o Le cluster de services est inaccessible directement.

Page 35: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 35

Load BalancingArchitectures (4/4)

Si le load-balancer est sur le même cluster que les serveurs:o Le load-balancer s’occupe

toujours de relayer vers le serveur actif.

o Mais la réponse est renvoyée directement au client.

o Inconvénient: Le cluster de services n’est plus privé.

Page 36: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 36

Load BalancingAlgorithmes de répartition (1/2)

Round-Robin:o Distribution de la charge équitablement à chaque serveur.o Avantages :

Très simple à mettre en place et très rapide.o Inconvénients :

Ne tient pas compte de facteurs extérieurs tels que le nombre de connexions ou le temps de réponse.

Un serveur surchargé continuera de recevoir des requêtes pendant que d’autres serveurs n’utiliseront que peu de leurs ressources.

Weighted Round-Robin:o Chaque serveur est assigné d’un « poids » qui détermine le taux de sollicitation du

serveur.o Avantages:

Aussi rapide que Round-Robin Tient compte des facteurs extérieurs.

o Inconvénients: Peu intéressant pour des serveurs de même type.

Page 37: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 37

Load BalancingAlgorithmes de répartition (2/2)

Least Connection:o Envoie les requêtes au serveur gérant le moins de connexions entrantes.o Avantages:

Les requêtes sont équitablement répartieso Inconvénients:

Ne tient pas compte des capacités de la machine

Weighted Least Connectiono La variante pondérée de Least Connection

Load Based:o Envoie les requêtes aux serveurs ayant la charge la plus faible.o Avantages:

Meilleure répartition de la chargeo Inconvénients

Ne tient pas compte des capacités de la machine

Page 38: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 38

Load BalancingGestion des sessions (1/4)

Contexte:o Dans certaines applications, une session peut se dérouler

en plusieurs étapes, qu’on appelle « états de session ». o Chaque étape ne s’active que lorsque l’étape précédente

est validée.o Par exemple, un achat sur Internet se fait en 3 étapes: le

choix de l’article, le remplissage des informations utilisateur et le remplissage des coordonnées bancaires.

o Les applications situées dans les serveurs distants doivent pouvoir suivre le changement d’état de session pour assurer la continuité.

Page 39: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 39

Load BalancingGestion des sessions (2/4)

Plusieurs solutions pour gérer les états des sessions:o L’état est stocké chez le client.o L’état est stocké sur le serveur distant.o L’état est stocké sur un serveur intermédiaire.

Si l’état est stocké chez le client:o Le client envoie les requêtes de chaque état avec les informations de la

session.o Le ou les serveurs traitent ces requêtes unitairement.

Si l’état est stocké sur le serveur distant:o le load-balancer redirige toutes les requêtes propres à la session sur le

serveur en question.o Problème: Si le serveur en question tombe au cours de la session, le client

perd toutes les informations relatives aux états précédents.

Solution: Une gestion habile des sessions.

Page 40: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 40

Load BalancingGestion des sessions (3/4)

2 solutions:o Gestion centralisée.o Gestion asynchrone.

Gestion centralisée:o Les états sont stockés sur un serveur à un niveau différent des serveurs

d’application.o Lors de la réception d’une requête, le serveur d’application récupère l’état de

session du serveur d’états.

Gestion asynchrone:o Chaque serveur diffuse aux autres serveurs l’état de la session lorsque celui-ci

change.o Chacun d’eux peut donc traiter une requête propre à un état de session. Si l’un

d’eux tombe, un autre prendra le relais.o Plus économique que la gestion centralisée, mais plus complexe à mettre en

place.

Page 41: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 41

Load BalancingGestion des sessions (4/4)

Gestion centralisée Gestion asynchrone

Page 42: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 42

Load BalancingOutils (1/2)

LVS: Linux Virtual ServerC’est un serveur virtuel agissant comme load balancer sur un cluster.Supporte 3 types de routage des requêtes:o Routage par NATo Routage par tunneling IPo Routage direct

Supporte les algorithmes de répartition de charge:o Round Robino Weighted Round Robino Least Connectiono Weighted Least connection o Autres algorithmes (Load Based, etc…)

Sous licence GPLQuelques interfaces graphiques disponibles: UltraMonkey, Piranha

Page 43: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 43

Load BalancingOutils (2/2)

LVS par NAT LVS par Tunnel IP

Page 44: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 44

REDONDANCE

Page 45: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 45

RedondancePlan

1. Concepts2. Redondance bas niveau3. Redondance couche liaison

1. STP, RSTP, MST2. LACP, EtherChannel

4. Redondance couche réseau1. VRRP, HSRP2. GLBP

5. Redondance couche applicative

Page 46: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 46

RedondanceConcepts

Procédé qui consiste à multiplier les éléments afin d’assurer les fonctions en cas de défaillance de l’élément principal.Principes clés pour mettre en place de la redondance dans un système:o Trouver le moyen pour que les éléments de secours puissent

remplacer automatiquement les éléments défaillants.o Dispersion géographique des éléments redondés pour éviter

les SPOF en cas de défaillance sur tout le site.

On trouve de la redondance à tous les niveaux: de la couche physique à la couche applicative.

Page 47: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 47

RedondanceRedondance bas niveau (1/2)

Redondance bas niveau = redondance au niveau matériel et câblage.Techniques de base:o Redondance des équipements: brancher les serveurs sur plusieurs switchs,

routeurs, etc…o Redondance des interfaces: Disposer de plusieurs interfaces sur les

équipements.o Redondance électrique: Brancher les équipements sur des alimentations

électriques distinctes…o Redondance de la sécurité: Multiplier les éléments de sécurité: Firewalls,

IPS, etc…

Plus le degré de redondance est élevé, plus la disponibilité est haute, mais c’est plus cher et plus lent…Il faut donc estimer le degré de disponibilité en fonction du besoin de l’entreprise.

Page 48: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 48

RedondanceRedondance bas niveau (2/2)

Exemple de matériel hautement disponible: HP BladeSystem P-Class Blade Server.

Page 49: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 49

Redondance liaisonSpanning Tree Protocol (1/3)

STP: Spanning Tree Protocol (802.1D)C’est un protocole qui permet de modifier la topologie d’un réseau sans boucle en cas de défaillance d’un lien.Il permet de détecter et de désactiver les boucles dans un réseau et fournit une hiérarchie des liens sous forme d’arbre.Principe: o Election d’un « root bridge », c’est-à-dire le lien (port) ayant l’id le plus

petit et la priorité la plus faible.o Détermination du plus court chemin entre deux nœuds du réseau pour

déterminer quel lien utiliser.o Désactivation des liens non utilisés.o En cas de défaillance d’un lien, le processus est relancé et une nouvelle

topologie est créée.o Le temps de convergence est d’environ 40s, ce qui est très lent.

Page 50: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 50

Redondance liaisonSpanning Tree Protocol (2/3)

Le Protocole STP

Page 51: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 51

Redondance liaisonSpanning Tree Protocol (3/3)

Evolutions de STP:o RSTP (Rapid STP, 802.1w) version plus rapide

de STP (1 s en moyenne)o PVSTP (Per VLAN STP) de Cisco, qui consiste à

appliquer STP sur plusieurs VLAN.o MST (Mutliple STP), la version normée de

PVSTP.o Autres protocoles de Spanning Tree

propriétaires.

Page 52: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 52

Redondance liaisonLACP, EtherChannel (1/2)

LACP: Link Aggregation Control Protocol (802.3ad)Protocole permettant d’agréger des liens ou des ports afin d’améliorer la vitesse de transfert et d’avoir de la redondance niveau 2.Une autre version très connue de ce protocole: Cisco EtherChannel (agrégation de liens Ethernet)Autres versions du protocole: o Cisco PAgP (Port Aggregation Protocol)o Nortel MLT (Multi Link Trunking)o 3COM DTP (Dynamic Trunking Protocol)o …

Page 53: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 53

Redondance liaisonLACP, EtherChannel (2/2)

Cisco EtherChannel

Page 54: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 54

Redondance réseauVRRP, HSRP (1/2)

VRRP: Virtual Router Redundancy Protocol (RFC 3768)Protocole permettant d’avoir de la redondance au niveau routage.Principe:o On met deux ou plusieurs routeurs dans un même groupe VRRP.o Dans ce groupe, un routeur va être élu comme routeur actif, celui ayant la

plus forte priorité. Les autres seront en standby.o Le routeur actif sera accessible à partir d’une adresse IP virtuelle.o Les routeurs s’envoient des messages (hello paquets) à intervalles réguliers

pour vérifier qu’il n’y a pas de panne (heartbeat)o Si le routeur actif tombe, un nouveau routeur sera élu comme actif et sera

disponible via le même adresse virtuelle.Protocole standardisé. Basé sur le protocole HSRP (Hot Standby Router Protocol) de Cisco.Une version libre de ce protocole: CARP (Common Address Redundancy Protocol) sous OpenBSD.

Page 55: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 55

Redondance réseauVRRP, HSRP (2/2)

VRRP - HSRP

Page 56: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 56

Redondance réseauGLBP

GLBP: Gateway Load Balancing ProtocolProtocole propriétaire Cisco qui ajoute de la répartition de charge à HSRP.Principe:o En plus d’affecter une priorité aux routeurs du

groupe, on affecte aussi un poids.o Election d’une AVG (Active Virtual Gateway) qui est

le routeur actif du groupe.o La charge est alors répartie en Round Robin ou

Weighted Round Robin.

Page 57: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 57

RedondanceRedondance applicative (1/3)

Redonder les éléments actifs: Serveur web, base de données, ERP…Répartir efficacement la charge.Assurer la synchronisation des données entre les éléments actifs et passifs.Gérer efficacement les états de session.Exemple:o Serveur web LAMP redondé et

load balancé.o Base de données MySQL redondée

et synchronisée.

Page 58: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 58

RedondanceRedondance applicative (2/3)

Teaming: Permet de regrouper plusieurs interfaces réseau en une seule vue par le système.Redondance au niveau de l’OS (couche 7)Type de comportement dépend du constructeur:o Fail Over Service: Une interface est active, une autre est

en standbyo Load Balancing: Les flux réseau sont distribués sur les

interfaces.o Switch-assisted: Pour plus d’efficacité dans le

basculement de service ou l’équilibre de charge.

Page 59: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 59

RedondanceRedondance applicative (3/3)

Autre solution pour mettre de la redondance: Virtualisation.Disposer de plusieurs machines virtuelles au sein d’une même machine permet d’avoir de la redondance à plus faible coût (financier et énergétique).

Page 60: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 60

RÉPLICATION DES DONNÉES

Page 61: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 61

Réplication des donnéesPlan

1. Concepts2. Réplication matérielle

1. RAID2. DRBD3. ENBD

3. Systèmes de fichiers

Page 62: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 62

Réplication des donnéesConcepts (1/3)

Ajouter de la redondance ne suffit pas à assurer la haute dispo si il n’y a pas de sauvegarde de données derrière.Il faut qu’en cas de défaillance du système actif, le système qui prend le relais assure la continuité de service.Il faut donc prévoir un mécanisme de synchronisation des données entre les éléments redondés: c’est la réplication.La réplication peut être matérielle (copie des données entre les disques, entre les BDD…), ou bien directement au sein du système de fichiers (cache mémoire, partage…).

Page 63: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 63

Réplication des donnéesConcepts (2/3)

Solution de stockage des données: le NAS (Network Attached Storage).o Espace de stockage attaché au réseau de l’entreprise qui gère l’ensemble

des données de l’entreprise.o C’est un serveur à part entière contenant plusieurs disques indépendants

ainsi que son propre OS et de son propre système de fichiers.

Page 64: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 64

Réplication des donnéesConcepts (3/3)

Autre dispositif de stockage: le SAN (Storage Area Network). C’est un réseau de stockage à part entière.o Il contient plusieurs périphériques de stockage reliés à des switchs en

Fiber channel ou iSCSI.o Le trafic de stockage est alors séparé du trafic métier et la capacité de

stockage est quasi illimitée.

Page 65: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 65

Réplication matérielleRAID (1/4)

RAID: Redundant Array of Inexpensive Disks.Technologie permettant de regrouper plusieurs disques en un seul (grappe).Permet d’augmenter la vitesse de transfert et d’assurer une haute dispo des données.Il existe plusieurs niveaux de RAID, chaque niveau décrivant la manière dont sont stockées les données sur les disques.RAID est de la réplication locale.

Page 66: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 66

Réplication matérielleRAID (2/4)

•Répartit les données sur l’ensemble des disques•Vitesse de transfert élevée•Pas de tolérance de panne.

RAID 0 (Striping)

•Duplication des données sur les disques•Amélioration de la vitesse de lecture•Haute disponibilité des données•Solution onéreuse car une partie du stockage est réservée au backup

RAID 1 (Mirroring)

•Stockage des données sous forme d’octets sur chaque disque•Un disque est dédié au stockage d’un bit de parité•Permet la reconstitution des données en cas de défaillance.

RAID 3 (Disk Array With Bit

Interleaved Data)

Page 67: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 67

Réplication matérielleRAID (3/4)

•Comme le RAID 3 mais des blocs à la place des bits•Meilleure gestion de la capacité de stockage•Le disque de contrôle doit avoir un débit égal à la somme des débits des autres disques.

RAID 4 (Disk Array With Block

Interleaved Data)

•Comme le RAID 4 mais la parité est stockée sur tous les disques•Performances élevées•Très Haute disponibilité des données•Très intéressant lorsqu’on possède beaucoup de disques.

RAID 5 (disk array with block-interleaved distributed parity)

•Comme le RAID 5•Plusieurs fonctions de parité pour augmenter la redondance•Nécessite d’avoir au moins 4 disques.

RAID 6 (disk array with block-interleaved

distributed parity )

Page 68: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 68

Réplication matérielleRAID (4/4)

Avantages du RAID:o La sécurité: RAID 1 et RAID 5 offrent un niveau de sécurité

élevée, mais RAID 1 est une copie conforme là où RAID 5 est un entrelacement.

o Performances : RAID 0 et RAID 5 offrent de fortes performances en lecture/écriture.

o Coût: Le RAID 1 est onéreux car il n’offre que 50% de la quantité de stockage, alors que RAID 5 arrive à offrir jusqu’à 90% tout en assurant la réplication des données.

Conclusion: o RAID 1 utilisé pour redonder les données d’un serveur.o RAID 5 utilisé dans de grands espaces de stockage.

Page 69: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 69

Réplication matérielleDRBD

DRBD (Distributed Replicated Block Device)Logiciel de réplication distante pour répliquer les données entre deux serveurs distants.Technique de mirroring des données comme en RAID 1.Solution Linux souvent déployée avec Heartbeat.Conserve une copie locale des données.La version 8 permet de supporter le partage de charge.

Page 70: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 70

Réplication matérielleENBD

ENBD: Enhanced Network Block DeviceEvolution de Linux NBD.Permet d’accéder aux données distantes comme si elles étaient locales.Une authentification est nécessaire pour disposer des droits de lecture/écriture.Associé à du RAID 1, assure une haute disponibilité des données « over the Net ».

Page 71: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 71

Réplication des donnéesSystèmes de fichiers (1/2)

Intérêt: disposer au sein du disque un système de fichiers offrant de la redondance mais aussi assurant l’intégrité des données.Deux types de systèmes de fichiers:o Locaux (Ext3, XFS…)o Partagés (NFS, OpenGFS…)

Fonctionnalités intéressantes:o Journalisation des données pour récupération en cas de crash.o Vitesse de lecture/écritureo Partage des données sur plusieurs disques.o Sécurité de l’accès aux donnéeso Clustering des donnéeso Etc…

Page 72: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 72

Réplication des donnéesSystèmes de fichiers (2/2)

Tableau présentant quelques systèmes de fichiers et leurs fonctionnalités:

File system Partage Ressource Réseau

En local Gestion du clustering de

données

Journalisé

ReiserFS Oui Oui

Ext 3 Oui Oui

XFS Oui Oui

NFS Oui Oui Oui

GFS Oui Oui Oui Oui Oui

CodaFS Oui Oui Oui Oui

Intermezzo Oui Oui Oui Oui

Lustre Oui Oui Oui Oui

Page 73: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 73

CONCLUSION

Page 74: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 74

ConclusionLa HD dans les faits (1/2)

En utilisant toutes les connaissances acquises dans cet état de l’art, voici un exemple d’une architecture hautement disponible:

Page 75: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 75

ConclusionLa HD dans les faits (2/2)

Dans cette architecture:o Tous les éléments sont redondés: routeurs, firewall, proxy, serveurs.o Chaque couche d’équipements est connectée à sa voisine en utilisant

une Switch Zone dédiée, avec des switchs implémentant du Spanning Tree.

o Les routeurs et les firewall utilisent de l’HSRP ou du GLBP, les proxy implémentent du CARP, les load balancers et les serveurs sont clusterisés et font de la redondance applicative (Teaming).

o Enfin les bases de données sont partagées via du RAID 5 localement et en ENBD avec les autres sites.

Une architecture particulièrement onéreuse mais qui offre un degré de disponibilité très élevé.En ajoutant en plus de la virtualisation, on peut offrir une haute disponibilité tout en réduisant considérablement les coûts.

Page 76: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 76

ConclusionLes acteurs de la HD (1/2)

Concrètement, il existe des solutions de serveurs offrant de la HD (RAID, Heartbeat, etc…)Gartner a réalisé une étude en 2003 des acteurs du marché de la haute disponibilité.En leaders: Fujitsu Technologies, HP, IBM, Stratus & Unisys.

Page 77: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 77

ConclusionLes acteurs de la HD (2/2)

Magic Quadrant of HA vendors

Page 78: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 78

ConclusionExemple

L’architecture de Wikipedia

Page 79: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 79

Conclusion

Nowadays, many solutions provide high availability and fault tolerance to IS architectures and materials.The rate of high availability is proportional to the investment deployed. The more money is invested for HA, the more secured the IS will be, making a difference between simple reliability and high availability.That’s why nowadays, it’s vital for companies to ensure its high availability in order to fully exercise its core business without fearing system failures or natural disasters.The coming of the virtualization is the best way to provide HA to systems at a lesser cost.

Page 80: Haute Disponibilité et Tolérance de Panne

Haute disponibilité

17/04/2023 Groupe 14: Boukhobza Elior 80

Questions?