Haute disponibilité
Haute disponibilité et Tolérance de
Panne
Date 13 Octobre 2009
Groupe 14
Auteur(s) BOUKHOBZA Elior
Res...
Haute disponibilité
Plan
I. Définitions
II. Clustering
III. Load Balancing
IV. Redondance
V. Réplication des données
VI. C...
Haute disponibilité
Introduction
What is the High Availability?
o A Highly Available material is a material
providing full...
Haute disponibilité
Introduction
Why high availability?
o In a company, the information system requires to be
fully availa...
Haute disponibilité
DÉFINITIONS
23/07/2015 5Groupe 14: Boukhobza Elior
Haute disponibilité
Définitions
Plan
1. Critères DICP
2. Indicateurs de disponibilité
3. Classification en Tiers
23/07/201...
Haute disponibilité
Définitions
Critères DICP
Critères DICP-R
o On classifie la sécurité d’un système grâce aux « Critères...
Haute disponibilité
Définitions
Indicateurs de disponibilité (1/3)
MTTF, MTBF, MTTR, MUT, MDT
o MTTF: Mean Time To Failure...
Haute disponibilité
Définitions
Indicateurs de disponibilité (2/3)
o MDT: Mean Down Time (Temps Moyen
d’indisponibilité)
...
Haute disponibilité
Définitions
Indicateurs de disponibilité (3/3)
Taux de disponibilité Durée d’indisponibilité sur un an...
Haute disponibilité
Définitions
Classification en Tier (1/3)
Classification en Tier:
o Une autre définition de la disponib...
Haute disponibilité
Définitions
Classification en Tier (2/3)
•1 alimentation électrique/refroidissement
•Pas de redondance...
Haute disponibilité
Définitions
Classification en Tier (3/3)
23/07/2015 Groupe 14: Boukhobza Elior 13
Classification en Ti...
Haute disponibilité
CLUSTERING
23/07/2015 Groupe 14: Boukhobza Elior 14
Haute disponibilité
Clustering
Plan
1. Définition
2. Fonctionnalités
3. Types de clusters
4. Architectures en cluster
5. D...
Haute disponibilité
Clustering
Définition (1/2)
Cluster = Grappe de serveurs ou Ferme de serveurs.
Le principe d’un cluste...
Haute disponibilité
Clustering
Définition (2/2)
23/07/2015 Groupe 14: Boukhobza Elior 17
Simple architecture en cluster
Haute disponibilité
Clustering
Fonctionnalités
Les fonctionnalités que doit offrir un cluster sont:
o Basculement de servi...
Haute disponibilité
Clustering
Types de clusters
On distingue plusieurs types de clusters, selon les
fonctionnalités:
o Cl...
Haute disponibilité
Clustering
Architectures en cluster (1/5)
Configuration « Actif/Passif »:
o Cluster de deux nœuds.
o L...
Haute disponibilité
Clustering
Architectures en cluster (2/5)
23/07/2015 Groupe 14: Boukhobza Elior 21
Cluster et basculem...
Haute disponibilité
Clustering
Architectures en cluster (3/5)
Principe:
o Le client entre l’@IP virtuelle 192.168.X.254
o ...
Haute disponibilité
Clustering
Architectures en cluster (4/5)
Configuration Actif/Actif:
o Les deux nœuds sont actifs et s...
Haute disponibilité
Clustering
Architectures en cluster (5/5)
Configuration N to 1:
o A la différence du N+1, lorsque le n...
Haute disponibilité
Clustering
Détection de pannes
Détection de pannes :
o Requêtes Push:
 Le nœud actif envoie des signa...
Haute disponibilité
Clustering
Outils (1/3)
Heartbeat: Outil de surveillance des systèmes.
Outil implémentant la surveilla...
Haute disponibilité
Clustering
Outils (2/3)
MON: Service Monitory Daemon
C’est un démon de supervision des services.
Il pe...
Haute disponibilité
Clustering
Outils (3/3)
FailSafe: Outil similaire à Heartbeat, de la
marque SGI.
Permet de supporter j...
Haute disponibilité
LOAD BALANCING
23/07/2015 Groupe 14: Boukhobza Elior 29
Haute disponibilité
Load Balancing
Plan
1. Définitions
2. Architectures de répartition de charge
3. Algorithmes de réparti...
Haute disponibilité
Load Balancing
Définitions
Load Balancing : Equilibre de charge ou répartition
de charge.
Il consiste ...
Haute disponibilité
Load Balancing
Architectures (1/4)
Schéma classique d’une architecture load-balancée :
o Un cluster de...
Haute disponibilité
Load Balancing
Architectures (2/4)
Principe:
o Le client s’adresse au load-balancer actif via
l’@IP vi...
Haute disponibilité
Load Balancing
Architectures (3/4)
Si le load-balancer agit
comme une passerelle:
o Utilisation du NAT...
Haute disponibilité
Load Balancing
Architectures (4/4)
Si le load-balancer est
sur le même cluster
que les serveurs:
o Le ...
Haute disponibilité
Load Balancing
Algorithmes de répartition (1/2)
Round-Robin:
o Distribution de la charge équitablement...
Haute disponibilité
Load Balancing
Algorithmes de répartition (2/2)
Least Connection:
o Envoie les requêtes au serveur gér...
Haute disponibilité
Load Balancing
Gestion des sessions (1/4)
Contexte:
o Dans certaines applications, une session peut se...
Haute disponibilité
Load Balancing
Gestion des sessions (2/4)
Plusieurs solutions pour gérer les états des sessions:
o L’é...
Haute disponibilité
Load Balancing
Gestion des sessions (3/4)
2 solutions:
o Gestion centralisée.
o Gestion asynchrone.
Ge...
Haute disponibilité
Load Balancing
Gestion des sessions (4/4)
Gestion centralisée Gestion asynchrone
23/07/2015 Groupe 14:...
Haute disponibilité
Load Balancing
Outils (1/2)
LVS: Linux Virtual Server
C’est un serveur virtuel agissant comme load bal...
Haute disponibilité
Load Balancing
Outils (2/2)
23/07/2015 Groupe 14: Boukhobza Elior 43
LVS par NAT LVS par Tunnel IP
Haute disponibilité
REDONDANCE
23/07/2015 Groupe 14: Boukhobza Elior 44
Haute disponibilité
Redondance
Plan
1. Concepts
2. Redondance bas niveau
3. Redondance couche liaison
1. STP, RSTP, MST
2....
Haute disponibilité
Redondance
Concepts
Procédé qui consiste à multiplier les éléments afin
d’assurer les fonctions en cas...
Haute disponibilité
Redondance
Redondance bas niveau (1/2)
Redondance bas niveau = redondance au niveau matériel et
câblag...
Haute disponibilité
Redondance
Redondance bas niveau (2/2)
23/07/2015 Groupe 14: Boukhobza Elior 48
Exemple de matériel ha...
Haute disponibilité
Redondance liaison
Spanning Tree Protocol (1/3)
STP: Spanning Tree Protocol (802.1D)
C’est un protocol...
Haute disponibilité
Redondance liaison
Spanning Tree Protocol (2/3)
23/07/2015 Groupe 14: Boukhobza Elior 50
Le Protocole ...
Haute disponibilité
Redondance liaison
Spanning Tree Protocol (3/3)
Evolutions de STP:
o RSTP (Rapid STP, 802.1w) version ...
Haute disponibilité
Redondance liaison
LACP, EtherChannel (1/2)
LACP: Link Aggregation Control Protocol (802.3ad)
Protocol...
Haute disponibilité
Redondance liaison
LACP, EtherChannel (2/2)
23/07/2015 Groupe 14: Boukhobza Elior 53
Cisco EtherChannel
Haute disponibilité
Redondance réseau
VRRP, HSRP (1/2)
VRRP: Virtual Router Redundancy Protocol (RFC 3768)
Protocole perme...
Haute disponibilité
Redondance réseau
VRRP, HSRP (2/2)
23/07/2015 Groupe 14: Boukhobza Elior 55
VRRP - HSRP
Haute disponibilité
Redondance réseau
GLBP
GLBP: Gateway Load Balancing Protocol
Protocole propriétaire Cisco qui ajoute d...
Haute disponibilité
Redondance
Redondance applicative (1/3)
Redonder les éléments
actifs: Serveur web, base de
données, ER...
Haute disponibilité
Redondance
Redondance applicative (2/3)
Teaming: Permet de regrouper plusieurs interfaces
réseau en un...
Haute disponibilité
Redondance
Redondance applicative (3/3)
Autre solution pour mettre de la
redondance: Virtualisation.
D...
Haute disponibilité
RÉPLICATION DES DONNÉES
23/07/2015 Groupe 14: Boukhobza Elior 60
Haute disponibilité
Réplication des données
Plan
1. Concepts
2. Réplication matérielle
1. RAID
2. DRBD
3. ENBD
3. Systèmes...
Haute disponibilité
Réplication des données
Concepts (1/3)
Ajouter de la redondance ne suffit pas à assurer la
haute dispo...
Haute disponibilité
Réplication des données
Concepts (2/3)
Solution de stockage des données: le NAS (Network
Attached Stor...
Haute disponibilité
Réplication des données
Concepts (3/3)
Autre dispositif de stockage: le SAN (Storage Area
Network). C’...
Haute disponibilité
Réplication matérielle
RAID (1/4)
RAID: Redundant Array of Inexpensive Disks.
Technologie permettant d...
Haute disponibilité
Réplication matérielle
RAID (2/4)
•Répartit les données sur l’ensemble des disques
•Vitesse de transfe...
Haute disponibilité
Réplication matérielle
RAID (3/4)
•Comme le RAID 3 mais des blocs à la place des bits
•Meilleure gesti...
Haute disponibilité
Réplication matérielle
RAID (4/4)
Avantages du RAID:
o La sécurité: RAID 1 et RAID 5 offrent un niveau...
Haute disponibilité
Réplication matérielle
DRBD
DRBD (Distributed Replicated Block Device)
Logiciel de réplication distant...
Haute disponibilité
Réplication matérielle
ENBD
ENBD: Enhanced Network Block Device
Evolution de Linux NBD.
Permet d’accéd...
Haute disponibilité
Réplication des données
Systèmes de fichiers (1/2)
Intérêt: disposer au sein du disque un système de f...
Haute disponibilité
Réplication des données
Systèmes de fichiers (2/2)
Tableau présentant quelques systèmes de
fichiers et...
Haute disponibilité
CONCLUSION
23/07/2015 Groupe 14: Boukhobza Elior 73
Haute disponibilité
Conclusion
La HD dans les faits (1/2)
En utilisant toutes les connaissances acquises dans cet état de ...
Haute disponibilité
Conclusion
La HD dans les faits (2/2)
Dans cette architecture:
o Tous les éléments sont redondés: rout...
Haute disponibilité
Conclusion
Les acteurs de la HD (1/2)
Concrètement, il existe des solutions de
serveurs offrant de la ...
Haute disponibilité
Conclusion
Les acteurs de la HD (2/2)
23/07/2015 Groupe 14: Boukhobza Elior 77
Magic Quadrant of HA ve...
Haute disponibilité
Conclusion
Exemple
L’architecture de Wikipedia
23/07/2015 Groupe 14: Boukhobza Elior 78
Haute disponibilité
Conclusion
Nowadays, many solutions provide high availability and
fault tolerance to IS architectures ...
Haute disponibilité
Questions?
23/07/2015 Groupe 14: Boukhobza Elior 80
Prochain SlideShare
Chargement dans…5
×

Haute Disponibilité et Tolérance de Panne

1 924 vues

Publié le

0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
1 924
Sur SlideShare
0
Issues des intégrations
0
Intégrations
9
Actions
Partages
0
Téléchargements
147
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive
  • Le sujet de mon état de l’art est donc la haute disponibilité, un sujet très important dans le domaine des réseaux et télécom, comme vous avez pu le constater au cours des différents cours que l’on a pu avoir. Je vais ici vous parler des techniques de haute dispo, afin que vous en compreniez les concepts pour pouvoir l’implémenter plus tard.
  • Tout d’abord, je vais vous donner quelques définitions relatives à la haute disponibilité, puis je vais enchainer sur le principe de clustering, que vous puissiez voir en détail ce que c’est, puis le load balancing, qui est étroitement lié au clustering.

    Ensuite, je vais vous parler de la redondance et des différents types de redondance que l’on peut observer dans les systèmes, puis je vais enchainer sur la réplication de données.

    Enfin, je vais conclure en présentant ce que peut être une architecture hautement disponible aujourd’hui, et en présentant quelques acteurs de haute dispo.
  • The question is « What is the high availabilty ». A highly available material is a material providing full time availability, whatever happens to the system
    The fault tolerance is the capacity of the material to ensure the data availabilty when failures occurs. It consists of providing full time checking and redundancy devices ot ensure HA.
  • But the real question is « Why high availabilty ».

    The answer is obvious, in a company, the IS needs to be fully 100% or most of the time.
    So, when a failure occurs, caused by many incidents like device crashing, fire, flooding, earthquake, etc…, the IS need to be available without losing any data, otherwise it would be fatal for the company

    Then, having a fully available system is really vital for the company, in order to ensuire its business without fearing failures or disasters.
  • D: Disponibilité, c’est la capacité que la matériel ou service de pouvoir etre dispo à toute heure
    I: Intégrité, c’est la capacité au matériel ou service de garantir que les données no’nt pas été modifiées par un tiers
    C: Confidentialité, c’est la capacité au matériel ou service de garantir que les données ne peuvent etre accédées que par les personnes y avant droit
    Et enfin P: la preuve, c’est en fait la non répudiation, c’est-à-dire l’impossibilité de nier avoir effectué telle ou telle action.

    Plus un système remplit ces conditions, plus il est sécurisé et fiable.

    D’autre part, on parle aussi de R, dans DICP-R, R pour règlementations, ce sont les règlementations que le système doit accepter (ISO27001, loi Sarbanes Oxley, etc…)
  • Indicateurs de disponibilité, qu’on appelle aussi des indicateurs de fiabilité d’un système, il y’en a plusieurs.

    MTTf: c’est le mean time to failure, c’est-à-dire le temps moyen avant apparition d’une panne. On souhaite que ce soit le plus grand nombre possible.
    MTBF, Mean time between failures, c a d le temps moyen entre deux pannes. Plus ce nombre est grand, plus le système est fiable.
    MTTR, Mean Time To Repair, c’est le temps moyen de réparation. C’est le temps moyen nécessaire à la réparation d’un composant, on souhaite par contre que ce soit le plus court possible.

    Pour finir, on définit que MTBF = MTTF + MTTR
  • Autres indicateurs: MDT pour mean down time, c’est-à-dire le temps moyen d’indisponibilité d’un composant.
    MUT: Mean up time, ou temps moyen de disponibilité avant qu’il ne tombe ou retombe en panne.
    En gros, MTBF = MUT + MDT

    Pour mesurer la disponibilité ou fiabilité d’un système, c’est MTTF/MTBF.
  • En tiers 1, on a juste une alimentation electrique et un système de refroidissement, les composants ne sont pas redondés et on a un taux de dispo de 99,671%.
    En tiers 2, on redonde les compsants, ce qui nous donne un taux de dispo de 99,741%.
    En tiers 3, le plus répandu dans les datacenters, on redonde les compsants et l’alimentation electrique, mais on en utilise qu’une seule, les autres etant en spare.
    Enfin en tiers 4, ou on a le plus haut degré de disponibilité, on redonde tout et on utilise tout. Par contre c’est beaucoup plus cher qu’en tiers 3, et rares sont les entreprises ayant du tiers 4.
  • Voici un petit tableau de classification de l’uptime institute.
  • Qu’est ce qu’un cluster? Un cluster, c’est une grappe de serveurs ou ferme de serveurs, c’est-à-dire qu’on regroupe plusieurs serveurs appelés nœuds pour n’en faire plus qu’un, qu’on appelle cluster, et ce de manière transparente pour le client.

    De ce fait, si l’un des nœuds tombe suite à une panne, le service n’est pas interrompu car un autre nœud aura pris le relais, assurant ainsi la dispo des services.
    Ces nœuds n’ont pas besoin d’être forcément proches physiquement. Ils peuvent aussi etre séparés à plusieiurs kilometres entre eux, formant ce qu’on appelle un géocluster.
  • Donc voici ce que c’est qu’un cluster, c’est un regroupement de plusieurs serveurs, et le client aura l’impression d’accéder à un seul serveur.

    Ici on peut voir qu’il y’a un load balancer avant le cluster, j’en parlerai plus en détail par la suite.
  • A quoi ca va servir donc de regrouper des serveurs?

    Alors tout d’abord le plus important, le basculement de service, ou fail over service, c’est-à-dire le fait de basculer le service vers un nœud fonctionnel du cluster lors d’une panne du nœud principal. On assure ainsi un service sans interruption.

    Comme autre fonctionnalité, la détection de pannes, c’est-à-dire que les nœuds du cluster guettent lorsqu’un des nœuds tombe en panne pour basculer le service en cas de panne. C’est aussi ce qu’on appelle le heartbeat.

    Ces fonctions sont en général couplées à d’autres fonctions pour assurer la disponibilité, telles que la réparition de charge sur les différents nœuds, la réplication des données, l’intégrité etc…
  • Les types de clusters: On peut distinguer plusieurs types de cluster, selon les fonctionnalités qu’ils offrent: …
    Par contre, on distingue différentes configurations ou architectures de clusters selon le type de service offert par le système.

    Comme architectures, on a:
  • L’architecture la plus simple, mais aussi la moins « hautement disponible ».

    Donc on a : un cluster de deux nœuds, avec un nœud principal ou nœud maitre qui execute les services (web, mail, etc…), et un nœud secondaire, ou nœud esclave, qui servira de nœud de spare en cas de défaillance du nœud principal. Entre les deux on a un ou plusieurs liens dédiés pour le basculement de service et le heartbeat.

    Au niveau l’adressage, comment ca marche:
    Chaqe nœud a son @ip réelle, mais le client accède au cluster via une adresse ip virtuelle, ou alias IP, qui va pointer vers le nœud actif du cluster par du NAT.
    Lorsque le nœud actif tombe, l’alias IP pointera alors sur le nœud de spare.
  • Voila ce que ca donne, donc, on a notre cluster de 2 nœuds, et un client accedant aux serveurs via une application.

    Il y accede via l’@ip virtuelle qui lui a été fournie, sans savoir sur quel nœud du cluster il accède. Ainsi, lorsque le nœud actif du cluster tombe, c’est le nœud de secours qui prend le relais, et ce sans que le client ne détecte quoi que ce soit (a la rigueur selon la distance entre les deux nœuds, par exemple dans un géocluster, il peut se passer une période dans laquelle le client n’accede pas au service, mais dans un cluster normal ce temps est proche de 0)
  • Autres architectures:
    Actif actif: les deux nœuds sont tous les deux actifs et se répartisse la charge grace a un load balancer. Lorsque l’un des nœuds tombe, l’autre récupère toute la charge du nœud défaillant, puis lorsque le nœud est réparé, la charge est à nouveau répartie.

    En N+1, on a cette fois N noeds actifs et load balancés, et un nœud de secours qui sert de spare. Ainsi lorsque l’un des nœuds actifs tombe, le service est basculé sur le nœud de secours, et le nœud défaillant devient le nœud de secours une fois réparé. On peut apercevoir un SPOF ici, lorsque deux nœuds ou plus tombent en meme temps, mais ceci est plus ou moins réglé par un bon load balancer.

    En N+M, cette fois ci on a M serveurs de spare. Ce nombre dépend du degré de haute dispo que l’on veut accorder.

  • En N to 1, c’est pareil que N+1 sauf que lorsque le nœud défaillant est réparé, le service bascule à nouveau sur ce nœud. On a donc 2 basculements de service.

    En N to N, on n’a pas de nœuds de secours, si un des nœuds tombe, la charge est redistribuée sur les N-1 nœuds restants. Puis lorsque le nœud est réablit, la charge est redistribuée en conséquence. Par conséquent ca nécessite des nœuds ayant une assez grande cacapcité pour supporter le surplus de charge.
  • La détection de pannes, j’en ai parlé un peu tout a l’heure, qu’on appelle aussi heartbeat.

    Comment ca marche: on a des requetes push et des requetes pull envoyées par les nœuds du cluster:
  • Maintenant je vais parler d’outils qui permettent de mettre du clustering dans un système.

    On a d’abord heartbeat, un logiciel du projet « Linux HA », qui est un outil de surveillance des systèmes. Il permet en outre d’offrir du fail over service à l’aide de scripts.

    Comment ca marche:
    Les services, ou applications sont démarrés avec heartbeat sur le nœud actif, et on peut les arreter ou les redémarrer manuellement dans l’interface, dans ce cas les services sont bascules sur le ou les nœuds de secours.
    On peut alors détecter les pannes matérielles ou réseau et basculer le service auto en cas de panne.

    Avec l’outil « Mon » que je vais présenter juste apres, on peut faire aussi non seulement de la surveillance matériel et réseau mais aussi de l’applicatif.

    D’autre part, hearbeat possede aussi le contrôle d’une application, qu’on appelle « Stonith », qui consiste à desactiver à distance le nœud actif pour eviter par exemple qu’un serveur « bouché » continue d’accepter les requetes des clients et ainsi provoquant un goulot d’etranglement dans le cluster.

  • Mon comme je l’ai dit, est un outil de supervision applicative. Il permet de détecter les défaillances applicatives et de les arreter ou redemarrer manuellement ou automatiquement.

    Ce qu’il peut faire:
  • Enfin un autre outil de clustering, FailSafe, de SGI, qui est similaire a Heartbeat.

    En outre, il peut supporter jusqu’à des clusters de 16 nœuds.
  • Le load balancing est étroitement lié au clustering, c’est ce qui permet de répartir la charge sur les différents nœuds du cluster.
    Un load balancer, c’est un serveur qui supporte l’équilibrage de charge. Il est situé en frontal des serveurs, et en général il est redondé pour éviter les SPOF.

    Grace aux LB, on peut équilibrer le trafic réseau et assurer une disponibilité des services
  • Voici un schéma classique d’une architecture avec load balancer, qui se rapproche de celle qu’on a vue tout a l’heure: Ici on a notre cluster de serveurs, et en frontal un cluster de LB qui vont répartir la charge sur les nœuds du cluster.
  • Le principe est sensiblement le même que dans une architecture en cluster sans LB: le client s’adresse au cluster via l’@ ip virtuelle fournie, sauf que là cette adresse ne pointera pas sur le serveur applicatif, mais sur le LB, qui se charge de relayer les requetes aux nœuds du cluster.

    La réponse se fait de deux facons, soit elle est renvoyée au LB qui la renvoie au client, soit elle est directe.
  • Solution 1: Le load balancer agit comme une passerelle:
    Les requetes vont vers le LB qui va rediriger vers un des serveurs du cluster.
    Le serveur en question renvoie ensuite la réponse au LB qui se charge alors de la retourner au client, il agit donc comme une passerelle entre le client et le cluster.

    C’est la solution qui est la plus utilisée en entreprise pour des raisons de sécurité, par contre cela implique de devoir conférer plus de responsabilités au LB, donc plus de charge.
  • La deuxieme solution, c’est lorsque le LB est contenu dans le cluster des serveurs. Il agit alors comme un relais entre le client et les serveurs, et par conséquent le cluster est accessible directement par le client. Ca peut donc poser des problemes de sécurité.
  • Maintenant je vais parler des algorithmes de répartition.

    Tout d’abord, on a le Round Robin, c’est-à-dire qu’on distribue la charge équitablement entre les serveurs. Comment ca marche concretement, les requetes sont adressées de facon séquentielle à chacun des nœuds du cluster.

    L’avantage de cette solution c’est qu’elle est tres simple à mettre en place car il n’y a quasiment rien à configurer. Par contre on peut le deviner, si un serveur est chargé, il continuera quand meme de recevoir les requetes, et on peut alors avoir un goulot d’étrangelement dans le réseau. On ne tient pas compte des facteurs extérieurs tels que le nombre de connexions ou le temps de réponse des serveurs.

    On a alors l’algorithme de Weighted Round Robin, qui agit comme le RR sauf qu’on attribue un poids, une priorité aux serveurs afin de déterminer lesquels sont les plus aptes à recevoir la charge.

    Comme avantages, d’une part, il est aussi rapide est simple que le RR, et d’autre part il tient bien compte des facteurs extérieurs. Par contre, c’est peu intéressant pour des serveurs ayant les memes caractéristiques (on revient aux pb du RR classique)
  • Comme autres algos, on trouve aussi:

    Least connection, c’est-à-dire qu’on envoie les requetes prioritairement aux serveurs ayant le moins de connexions entrantes, et sa version pondérée le Weighted Least Connection.
    Comme avantages…

    Load Based, qui consiste là à envoyer les requetes aux serveurs ayant la charge la plus faible. Comme avantages…
  • Autre chose assez importante dans le LB, qui est la gestion des sessions. Dans des applications il arrive souvent qu’une session se déroule en plusieurs étapes, qu’on appelle des états de session.

    Par exemple, lorsqu’on achete sur internet, d’abord on choisit son article, ensuite on remplit nos informations de facturation puis enfin le paiement bancaire. Quand on s’adresse à un service qui est load balancé, la question est de savoir comment est opéré le changement d’état de session par le LB, c’est-à-dire comment répartir la charge dans ces cas là.

    En gros, il faut garder en mémoire l’état de la session pour que chaque serveur du cluster puisse savoir ce qui s’est passé auparavant
  • Donc là il exite plusieurs solutions, soit l’état est chez le client, par des cookies, ou autre…
    Soit il est sur le serveur distant qui a engagé la session, ou bien on le stocke sur un serveur dédié à ça.

    Si c’est chez le client, il faut donc que le client communique au LB cet état. Par conséquent les requetes seront plus lourdes, et on voit aussi un SPOF ici, lorsque le client flush son navigateur par exemple en pleine session, ben il doit tout recommencer…

    Si c’est chez le serveur ayant engagé la session, alors toutes les étapes de la session seront redirigées vers le meme serveur jusqu’à la fin de la session. Par contre on voit bien ici, si le serveur tombe, le client doit tout refaire.

    Donc la solution c’est bien de stocker les états dans des serveurs intermédiaires.
  • On a deux choix: soit une gestion centralisée, soit asynchrone.

    En centralisée, on a donc le serveur de sessions qui est central, et chaque serveur applicatif récupere l’état de la session sur le serveur. Si ce serveur tombe, SPOF cependant.
    En asynchrone, chaque serveur communique aux autres l’état de la session, et donc si un des serveurs tombe, un autre peut tout a fait prendre le relais. Par contre ca demande plus de choses à configurer ainsi qu’avoir de la place sur les serveurs pour stocker ces états.
  • Donc voici dans un schéma ce que ca peut donner.
  • Je reviens maintenant sur les outils de load balancing, et je vais plus particulierement parler de LVS: Linux Virtual Server
    C’est un serveur virtuel… qui supporte 3 types de routage des requetes:
    … Je vais en parler un peu juste après

    Il supporte en outre tous les algos de répartition de charge: …

    Quelques interfaces graphiques existent comme Ultramonkey, Piranha…
  • LVS par nat: C’est du load balancing tout bete qui consiste à affecter un serveur du cluster à une machine (IP). Comme on peut le voir sur ce schéma, le client représenté en bleu enverra ses requetes au serveur bleu, le client vert vers le serveur vert etc etc.
    Un client peut aussi avoir plusieurs serveurs affectés avec un algo de répartition qui répartira la charge comme on l’a vu (RR, WRR…)

    Le probleme evident ici, c’est que le LB agit comme une passerelle, et donc se prend toute la charge en pleine face. Mais c’est bien plus simple à configurer.

    L’autre solution c’est du LVS avec du tunnel IP, c’est-à-dire que le LB va servir de serveur VPN en quelque sorte, et va construire un tunnel entre les clients et les serveurs. On a donc tous les bénéfices du tunneling à savoir la mutualisation des ressources et la sécurité des informations, et le LB ne se prend pas toutes les requetes en pleine face, donc une otpimisation de la charge.

    Il y’a aussi une derniere solution qui est du routage direct, mais je ne vais pas en parler car elle n’est pas tres intéressante (mais encore plus simple à mettre en place)
  • Donc voilà pour la partie cluster/load balancer, maintenant je vais parler de redondance.
  • Donc on trouve de la redondance partout, du bas niveau jusqu’à la couche applicative.
  • Qu’est ce que la redondance? C’est un procédé qui consiste à multiplier les …

    Cependant, ca ne sert à rien de mettre de la redondance si on ne respecte pas certains principes, qui sont:
    De remplacer automatiquement les éléments défaillants
    De se disperser géographiquement en cas de défaillance de tout le site
  • La redondance bas niveau, c’est tout simplement la redondance du matériel et du cablage.

    Quelques techniques de base:
    La redondance des équipements: avoir des équipements de spare en cas de défaillance.
    La redondance des interfaces, donc là aussi d’avoir plusieurs interfaces dans les équipements
    La redondance electrique, aussi très importante, car si l’alumentation electrique tombe et que tout le système tombe a cause de ca, quelle que soit le degré de redondance au niveaux supérieurs, ca ne sert a rien. Donc multiplier les alimentations.
    Et bien entendu redonder la sécurité: firewall, ips…

  • Exemple de redondance bas niveau sur des blades serveurs HP, d’apres le cours de Mr Thiel

    On a ici
    2 power enclosures, 2 server enclosures, et un power distribution system, ou systeme de distribution de l’electricité (p class mini bus bar), ou sont branchées les power enclosures

    Au niveau des serveurs, on a deux cotés, le coté A en bleu et la coté B en rouge, et on voit que sur une meme serveur enclosure, on a chaque coté connecté aux deux power enclosures, ce qui offre d’ores et deja de la redondance electrique.

    De plus, une meme power enclosure est alimentée par deux sources d’énergie différentes, et donc on evite que lorsqu’une source d’énergie tiombe, on perde tout le systeme.

    Voila un matériel hautement disponible bas niveau.
  • On va plus haut dans les couches, et on passe au layer 2.

    Pour la redondance L2, on a un protocole qui est le Spanning Tree Protocol, ou STP 802.1D. C’est un protocole qui va modifier la topologie d’un réseau pour supprimer les boucles et qui va réagir en cas de défaillance d’un lien.

    Pour ca, il crée une hierarchie sous forme d’arbre:
    En gros, on a un « root bridge » qui est élu, c’est-à-dire le port ayant l’id le plus petit et la priorité la plus faible, et de ce root bridge on fait un calcul du plus court chemin pour construire une topologie de réseau.
    Les liens non utilisés sont désactivés, et lorsqu’un lien tombe, une nouvelle election est lancée et une nouvelle topologie est créée.
    Cependant, le temps de convergence est très lent (40 s environ)
  • Par exemple, entre A et B on a 3 switchs interconnectés entre eux (full meshed) avec les liens 1 et 2 qui sont actifs et le lien 3 en standby. Lorsqu’un lien tombe, par exemple le lien 2, la topologie est recréée et le lien 3 devient un lien actif.
  • Comme on a vu, STP est assez lent, c’est pourquoi il existe des versions améliorées de STP:
    RSTP, Rapid STP, ou on finit par arriver à 1s de convergence;
    PVSTP de Cisco qui ajoute du VLAN tagging a STP
    MST, qui est la version normée de PVSTP

    Et d’autre protocoles propriétaires.
  • Un autre protocole offrant de la haute dispo, qui est LACP

    LACP : Link Aggregation Control protocol, qui est un protocole d’agrégation de liens. Ca veut dire qu’on va regrouper plusieurs liens en un seul gros lien pour augmenter la vitesse de transfert et pour obtenir de la redondance.

    LACP est la version normée du protocole EtherChannel de Cisco, qui est largement utilisé entre les équipements Cisco. Cependant, pour interconnecter des switchs de constructeurs différents avec de l’agrégation de liens, il convient mieux d’utiliser LACP.

    Autres versions plus proprietaires: PaGP, nortel MLT, 3COM DTP…

  • Donc en images, ce que ca donne, on a les ports 45 à 48 regtroupés en un seul lien etherchannel, avec un débit de 4*1G soit 4 Gb
  • Passons maintenant au layer 3, donc VRRP HSRP

    VRRP: Virtual … C’est un protocole qui permet d’avoir de la redondance au niveau routage.
    Comment ca marche: on définit un groupe de routeurs, ou groupe VRRP dans lequel on met les routeurs. Il y’aura un routeur actif et un ou plusieurs routeurs en standby, Le routeur actif etant celui ayant la priorité la plus élevée

    Tout comme avec le clustering, on accede au groupe via une @ip virtuelle, qui designe le routeur actif du groupe. Les routeurs s’envoient periodiquement des messages pour verifier le bon fonctionnement du routeur actif, et donc lorsqu’ils détectent qu’il est tombé, une nouvelle élection est réalisée et un nouveau routeur actif est élu parmi les routeurs en standby.

    VRRP est la version normalisée du protocole HSRP de Cisco.

    Il y’a aussi une autre versiopn libre de ce protocole qui est CARP d’OpenBSD.
  • Donc ce schéma est assez similaire aux schémas sur les clusters, on a deux routeurs au sein d’un groupe VRRP/HSRP, accessibles via une @ip virtuelle en .254. Cette adresse designe le routeur actif du groupe, et lorsque celui-ci tombe, le passif prend le relais.
  • GLBP: …
    C’est un protocole propriétaire Cisco qui ajoute la répartition de charge à HSRP, en utilisant les principes de load balancing vus auparavant, à savoir:
    Affectation d’un poids aux routeurs du groupe
    L’election d’un routeur actif qu’on appelle AVG
    Repartitionj de charge avec du RR ou WRR

  • Enfin il ne faut pas oublier d’ajouter aussi de la redondance dans la couche applicative, c’est-à-dire les serveurs, les bases de données, l’ERP etc…
    Par exemple ici, on a un serveur Web LAMP qui est redondé et load balancé, et une base de données Mysql synchronisée entre les deux serveurs de données.
  • Une autre application de la redondance applicative: le teaming, c’est de l’agrégation de cartes réseau. C’est une redondance au niveau du système d’exploitation.

    En configurant du teaming on peut mettre en place plusieurs types de comportement, dépendant du constructeur:
    FOS , …
    LB, …
    Switch assisted (par ex chez HP) pour mieux répartir la charge.
  • Enfin une autre solution pour avoir de la redondance à tous les niveaux, la virtualisation. Elle permet d’avoir plusieurs machines a l’intérieur d’une seule et meme machine, et donc on obtient ici de la redondance à faible cout (financier et energétique)
  • Maintenant je vais passer à la réplication des données, qui est aussi importante que la redondance, car sans réplication la redondance ne sert à rien
  • Donc d’abord je vais enoncer quelques concepts relatifs à la réplication, ensuite je vais parler de la réplication matérielle, avec RAID, DRBD et ENBD, puis enfin des systemes de fichiers qui font de la réplication.
  • Donc comme je l’ai dit, mettre de la redondance ne sert à rien si les données ne sont pas synchronisées entre les élements redondés. D’où la réplication qui va copier les données de l’élément actif vers le ou les éléments en standby. Cette réplication peut etre matérielle (donc entre les disques, bdd…) ou bien directement dans le système de fichiers (cache, partage…)
  • Avant de rentrer plus en détail dans les solutions de réplication, je vais d’abord parler des éléments de stockage.

    Tout d’abord on a le NAS: network attached storage. C’est un espace de stockage qui se trouve sur le réseau, un serveur a part entiere qui dispose de plusieurs disques indépendants, de son propre OS et de son propre file system.

    Par exemple, ici on a le NAS et on a deux machines A et B qui se connectent au NAS pour stocker les données
  • Une autre solution de stockage: le SAN, SAN pour Storage Area Network. Ici on a carrément un réseau de stockage à part entiere, indépendant du réseau local.

    Ce sont tout simplement des disques qui sont reliés à des switchs SAN avec du tres haut débit, du Fibre Channel ou iSCSI. Le trafic de stockage est donc séparé du trafic LAN et la capacité de stockage est quasi illimitée

    Là par exemple on peut voir que les PC et serveurs sont connectés sur un LAN, et les serveurs sont connectés sur un SAN pour leurs données.
  • Maintenant je vais parler du RAID. Le RAID (Redondant array of inexpensive disks) est une solution permettant de regrouper plusieurs disques pour n’en former qu’un seul. Il existe plusieurs types de RAID, chaque niveau décrivant la manière de stocker les données. C’est de la réplication locale, donc au sein d’un meme système.
  • RAID 0, ou striping: En RAID 0, on répartit les données sur l’esnemble des disques pour augmenter la vitesse de transfert. Cependant, si l’un des disques tombe, toutes les données sont perdues, donc pas de tolérance de panne.

    En RAID 1, c’est du mirroring,ca veut dire qu’on duplique les données sur les disques, obtenant ainis de la haute dispo des données. Par contre c’est bien plus cher car cela implique qu’une partie du stokcage est réservée au backup.

    Je vais passer sur le RAID 2, en RAID 3, on a ici un disque de stockage et un disque qui va stocker les parités, qui va permettre de reconstituer les données en cas de plantage.
  • En raid 4, meme chose que le raid 3 sauf qu’au lieu d’avoir des bits de parités, on a des blocks, ce qui permet une meilleure gestion de la capacité de stockage.
    Enfin en raid 5, on stocke les bits de parité sur chacun des disques. On obtient ainsi de meilleurs performances et une forte tolérance de panne. Par contre c’est intéressant uniquement lorsqu’on a beaucoup de disques. Quand on en a peu, il devient plus rentable de mettre en place du raid 0 + 1 plutôt que du raid 5.

    Il y’en a encore d’autres, comme le RAID 6, qui est une évolution du raid 5. Il existe aussi du raid 10, etc..
  • Les avantages de mettre du raid:
    La sécurité, …
  • DRBD: C’est une solution de réplication distante, qui permet de répliquer les données entre deux serveurs distants. C’est du mirroring comme en RAID , mais en version distante.
    Elle est souvent déployée avec Heartbeat. De plus, depuis la version 8 on peut faire du partage de charge.
  • Autre solution: ENBD, qui est l’évolution de Linux NBD. Elle permet à un serveur d’accéder aux données distantes comme si elles etaient locales.

    Une authentification est nécessaire pour avoir les droits de lecture ecriture. Ca permet d’avoir donc une haute dispo des données à travers le net.
  • Pour finir, je vais parler des systemes de fichiers qui offrent de la redondance mais aussi qui assurent l’intégrité des données.

    Il y’a deux types de systemes de fichiers, les FS locaux, comme Ext3, XFS…; et partagés, comme NFS, OpenGFS…

    Ces FS offrent des fonctionnalités intéressantes, comme:
    -…
  • Je ne vais pas entrer en détail sur les plus et les moins de chaque système, mais j’ai trouvé sur le net un petit tableau de comparaison de quelques FS
  • Conclusion à tout ca:
  • Maintenant que l’on sait tout ca, voyons ce que ca donne un système hautement disponible:

    Dans cette architecture:
    - Tous les éléments sont redondés: routeurs, firewall, proxy, serveurs.
    - 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.
    - 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).
    - 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.
  • Concernant les acteurs de la haute disponibilité, il existe sur le marché des boites qui offrent des serveurs avec de la HD (RAID, Heartbeat…)

    En 2003, Gartner a réalisé une étude sur les acteurs du marché de la haute dispo, et en leader on trouve HP, IBM, Stratus et Unisys.

    Voici le magic quadrant qui a été effectué:
  • Enfin pour finir un cas concret: l’architecture de Wikipedia
    On a tout d’abord GeoDNS, une répartition de charge par DNS qui redirige les requetes vers les load balancers les plus proches des clients
    Du load balancing par LVS
    Des serveurs Squid de cache
    Près de 400 serveurs Web Apache PHP Mysql avec du cache memcached
    Utilisation de CARP pour répartir les requetes vers les différents datacenter
    Etc etc…

    Ce n’est que la partie supérieure de l’iceberg, mais on voit bien comment ces concepts sont mis en œuvre dans les architectures actuelles.
  • To conclude, in this exposé, we have seen that many solutions provide ha and ft to IS architectures.
    The rate of HA is proportional…

    To finish, i say that the coming of the virtualization will help IS to have HA in a least cost.
  • Do you have questions?
  • Haute Disponibilité et Tolérance de Panne

    1. 1. 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
    2. 2. Haute disponibilité Plan I. Définitions II. Clustering III. Load Balancing IV. Redondance V. Réplication des données VI. Conclusion 23/07/2015 2Groupe 14: Boukhobza Elior
    3. 3. Haute disponibilité 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. 23/07/2015 3Groupe 14: Boukhobza Elior
    4. 4. Haute disponibilité 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. 23/07/2015 4Groupe 14: Boukhobza Elior
    5. 5. Haute disponibilité DÉFINITIONS 23/07/2015 5Groupe 14: Boukhobza Elior
    6. 6. Haute disponibilité Définitions Plan 1. Critères DICP 2. Indicateurs de disponibilité 3. Classification en Tiers 23/07/2015 Groupe 14: Boukhobza Elior 6
    7. 7. Haute disponibilité Définitions Critères DICP Critères DICP-R o 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. 23/07/2015 Groupe 14: Boukhobza Elior 7
    8. 8. Haute disponibilité Définitions Indicateurs de disponibilité (1/3) MTTF, MTBF, MTTR, MUT, MDT o 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. 23/07/2015 Groupe 14: Boukhobza Elior 8
    9. 9. Haute disponibilité 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 + MDT o Disponibilité = MTTF / MTBF 23/07/2015 Groupe 14: Boukhobza Elior 9
    10. 10. Haute disponibilité Définitions Indicateurs 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 23/07/2015 Groupe 14: Boukhobza Elior 10 Source: Wikipedia
    11. 11. Haute disponibilité Définitions Classification 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é. 23/07/2015 Groupe 14: Boukhobza Elior 11
    12. 12. Haute disponibilité Définitions Classification 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: 23/07/2015 Groupe 14: Boukhobza Elior 12
    13. 13. Haute disponibilité Définitions Classification en Tier (3/3) 23/07/2015 Groupe 14: Boukhobza Elior 13 Classification en Tiers de l’Uptime Institute
    14. 14. Haute disponibilité CLUSTERING 23/07/2015 Groupe 14: Boukhobza Elior 14
    15. 15. Haute disponibilité Clustering Plan 1. Définition 2. Fonctionnalités 3. Types de clusters 4. Architectures en cluster 5. Détection de pannes 6. Outils 23/07/2015 Groupe 14: Boukhobza Elior 15
    16. 16. Haute disponibilité Clustering Dé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. 23/07/2015 Groupe 14: Boukhobza Elior 16
    17. 17. Haute disponibilité Clustering Définition (2/2) 23/07/2015 Groupe 14: Boukhobza Elior 17 Simple architecture en cluster
    18. 18. Haute disponibilité Clustering Fonctionnalité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 charge o Réplication des données o Intégrité des données… 23/07/2015 Groupe 14: Boukhobza Elior 18
    19. 19. Haute disponibilité Clustering Types de clusters On distingue plusieurs types de clusters, selon les fonctionnalités: o Clusters de haute disponibilité o Clusters de calcul o Clusters d’équilibrage de charge o Clusters d’applications… Différentes configurations selon le type de services: o Actif/Actif o Actif/Passif o N+1 o N+M o N to 1 o N to N 23/07/2015 Groupe 14: Boukhobza Elior 19
    20. 20. Haute disponibilité Clustering Architectures 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. 23/07/2015 Groupe 14: Boukhobza Elior 20
    21. 21. Haute disponibilité Clustering Architectures en cluster (2/5) 23/07/2015 Groupe 14: Boukhobza Elior 21 Cluster et basculement de service
    22. 22. Haute disponibilité Clustering Architectures en cluster (3/5) Principe: o Le client entre l’@IP virtuelle 192.168.X.254 o 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. 23/07/2015 Groupe 14: Boukhobza Elior 22
    23. 23. Haute disponibilité Clustering Architectures 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. 23/07/2015 Groupe 14: Boukhobza Elior 23
    24. 24. Haute disponibilité Clustering Architectures 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é. 23/07/2015 Groupe 14: Boukhobza Elior 24
    25. 25. Haute disponibilité Clustering Dé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 ». 23/07/2015 Groupe 14: Boukhobza Elior 25
    26. 26. Haute disponibilité Clustering Outils (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 ». 23/07/2015 Groupe 14: Boukhobza Elior 26
    27. 27. Haute disponibilité Clustering Outils (2/3) MON: Service Monitory Daemon C’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 serveurs o Marche/arrêt de services o Consultation de l’état des services o Surveillance des ressources o 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. 23/07/2015 Groupe 14: Boukhobza Elior 27
    28. 28. Haute disponibilité Clustering Outils (3/3) FailSafe: Outil similaire à Heartbeat, de la marque SGI. Permet de supporter jusqu’à des clusters de 16 nœuds. 23/07/2015 Groupe 14: Boukhobza Elior 28
    29. 29. Haute disponibilité LOAD BALANCING 23/07/2015 Groupe 14: Boukhobza Elior 29
    30. 30. Haute disponibilité Load Balancing Plan 1. Définitions 2. Architectures de répartition de charge 3. Algorithmes de répartition de charge 4. Gestion des états de sessions 5. Outils 23/07/2015 Groupe 14: Boukhobza Elior 30
    31. 31. Haute disponibilité Load Balancing Dé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. 23/07/2015 Groupe 14: Boukhobza Elior 31
    32. 32. Haute disponibilité Load Balancing Architectures (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 passif o Un lien dédié entre les deux load-balancers pour le basculement de service. 23/07/2015 Groupe 14: Boukhobza Elior 32
    33. 33. Haute disponibilité Load Balancing Architectures (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. 23/07/2015 Groupe 14: Boukhobza Elior 33
    34. 34. Haute disponibilité Load Balancing Architectures (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. 23/07/2015 Groupe 14: Boukhobza Elior 34
    35. 35. Haute disponibilité Load Balancing Architectures (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é. 23/07/2015 Groupe 14: Boukhobza Elior 35
    36. 36. Haute disponibilité Load Balancing Algorithmes 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. 23/07/2015 Groupe 14: Boukhobza Elior 36
    37. 37. Haute disponibilité Load Balancing Algorithmes 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éparties o Inconvénients:  Ne tient pas compte des capacités de la machine Weighted Least Connection o 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 charge o Inconvénients  Ne tient pas compte des capacités de la machine 23/07/2015 Groupe 14: Boukhobza Elior 37
    38. 38. Haute disponibilité Load Balancing Gestion 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é. 23/07/2015 Groupe 14: Boukhobza Elior 38
    39. 39. Haute disponibilité Load Balancing Gestion 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. 23/07/2015 Groupe 14: Boukhobza Elior 39
    40. 40. Haute disponibilité Load Balancing Gestion 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. 23/07/2015 Groupe 14: Boukhobza Elior 40
    41. 41. Haute disponibilité Load Balancing Gestion des sessions (4/4) Gestion centralisée Gestion asynchrone 23/07/2015 Groupe 14: Boukhobza Elior 41
    42. 42. Haute disponibilité Load Balancing Outils (1/2) LVS: Linux Virtual Server C’est un serveur virtuel agissant comme load balancer sur un cluster. Supporte 3 types de routage des requêtes: o Routage par NAT o Routage par tunneling IP o Routage direct Supporte les algorithmes de répartition de charge: o Round Robin o Weighted Round Robin o Least Connection o Weighted Least connection o Autres algorithmes (Load Based, etc…) Sous licence GPL Quelques interfaces graphiques disponibles: UltraMonkey, Piranha 23/07/2015 Groupe 14: Boukhobza Elior 42
    43. 43. Haute disponibilité Load Balancing Outils (2/2) 23/07/2015 Groupe 14: Boukhobza Elior 43 LVS par NAT LVS par Tunnel IP
    44. 44. Haute disponibilité REDONDANCE 23/07/2015 Groupe 14: Boukhobza Elior 44
    45. 45. Haute disponibilité Redondance Plan 1. Concepts 2. Redondance bas niveau 3. Redondance couche liaison 1. STP, RSTP, MST 2. LACP, EtherChannel 4. Redondance couche réseau 1. VRRP, HSRP 2. GLBP 5. Redondance couche applicative 23/07/2015 Groupe 14: Boukhobza Elior 45
    46. 46. Haute disponibilité Redondance Concepts 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. 23/07/2015 Groupe 14: Boukhobza Elior 46
    47. 47. Haute disponibilité Redondance Redondance 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. 23/07/2015 Groupe 14: Boukhobza Elior 47
    48. 48. Haute disponibilité Redondance Redondance bas niveau (2/2) 23/07/2015 Groupe 14: Boukhobza Elior 48 Exemple de matériel hautement disponible: HP BladeSystem P-Class Blade Server.
    49. 49. Haute disponibilité Redondance liaison Spanning 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. 23/07/2015 Groupe 14: Boukhobza Elior 49
    50. 50. Haute disponibilité Redondance liaison Spanning Tree Protocol (2/3) 23/07/2015 Groupe 14: Boukhobza Elior 50 Le Protocole STP
    51. 51. Haute disponibilité Redondance liaison Spanning 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. 23/07/2015 Groupe 14: Boukhobza Elior 51
    52. 52. Haute disponibilité Redondance liaison LACP, 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 … 23/07/2015 Groupe 14: Boukhobza Elior 52
    53. 53. Haute disponibilité Redondance liaison LACP, EtherChannel (2/2) 23/07/2015 Groupe 14: Boukhobza Elior 53 Cisco EtherChannel
    54. 54. Haute disponibilité Redondance réseau VRRP, 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. 23/07/2015 Groupe 14: Boukhobza Elior 54
    55. 55. Haute disponibilité Redondance réseau VRRP, HSRP (2/2) 23/07/2015 Groupe 14: Boukhobza Elior 55 VRRP - HSRP
    56. 56. Haute disponibilité Redondance réseau GLBP GLBP: Gateway Load Balancing Protocol Protocole 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. 23/07/2015 Groupe 14: Boukhobza Elior 56
    57. 57. Haute disponibilité Redondance Redondance 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. 23/07/2015 Groupe 14: Boukhobza Elior 57
    58. 58. Haute disponibilité Redondance Redondance 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 standby o 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. 23/07/2015 Groupe 14: Boukhobza Elior 58
    59. 59. Haute disponibilité Redondance Redondance 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). 23/07/2015 Groupe 14: Boukhobza Elior 59
    60. 60. Haute disponibilité RÉPLICATION DES DONNÉES 23/07/2015 Groupe 14: Boukhobza Elior 60
    61. 61. Haute disponibilité Réplication des données Plan 1. Concepts 2. Réplication matérielle 1. RAID 2. DRBD 3. ENBD 3. Systèmes de fichiers 23/07/2015 61Groupe 14: Boukhobza Elior
    62. 62. Haute disponibilité Réplication des données Concepts (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…). 23/07/2015 Groupe 14: Boukhobza Elior 62
    63. 63. Haute disponibilité Réplication des données Concepts (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. 23/07/2015 Groupe 14: Boukhobza Elior 63
    64. 64. Haute disponibilité Réplication des données Concepts (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. 23/07/2015 Groupe 14: Boukhobza Elior 64
    65. 65. Haute disponibilité Réplication matérielle RAID (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. 23/07/2015 Groupe 14: Boukhobza Elior 65
    66. 66. Haute disponibilité Réplication matérielle RAID (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) 23/07/2015 Groupe 14: Boukhobza Elior 66
    67. 67. Haute disponibilité Réplication matérielle RAID (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 ) 23/07/2015 Groupe 14: Boukhobza Elior 67
    68. 68. Haute disponibilité Réplication matérielle RAID (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. 23/07/2015 Groupe 14: Boukhobza Elior 68
    69. 69. Haute disponibilité Réplication matérielle DRBD 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. 23/07/2015 Groupe 14: Boukhobza Elior 69
    70. 70. Haute disponibilité Réplication matérielle ENBD ENBD: Enhanced Network Block Device Evolution 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 ». 23/07/2015 Groupe 14: Boukhobza Elior 70
    71. 71. Haute disponibilité Réplication des données Systè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/écriture o Partage des données sur plusieurs disques. o Sécurité de l’accès aux données o Clustering des données o Etc… 23/07/2015 Groupe 14: Boukhobza Elior 71
    72. 72. Haute disponibilité Réplication des données Systèmes de fichiers (2/2) Tableau présentant quelques systèmes de fichiers et leurs fonctionnalités: 23/07/2015 Groupe 14: Boukhobza Elior 72 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
    73. 73. Haute disponibilité CONCLUSION 23/07/2015 Groupe 14: Boukhobza Elior 73
    74. 74. Haute disponibilité Conclusion La 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: 23/07/2015 Groupe 14: Boukhobza Elior 74
    75. 75. Haute disponibilité Conclusion La 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. 23/07/2015 Groupe 14: Boukhobza Elior 75
    76. 76. Haute disponibilité Conclusion Les 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. 23/07/2015 Groupe 14: Boukhobza Elior 76
    77. 77. Haute disponibilité Conclusion Les acteurs de la HD (2/2) 23/07/2015 Groupe 14: Boukhobza Elior 77 Magic Quadrant of HA vendors
    78. 78. Haute disponibilité Conclusion Exemple L’architecture de Wikipedia 23/07/2015 Groupe 14: Boukhobza Elior 78
    79. 79. Haute disponibilité 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. 23/07/2015 Groupe 14: Boukhobza Elior 79
    80. 80. Haute disponibilité Questions? 23/07/2015 Groupe 14: Boukhobza Elior 80

    ×