Sûreté de fonctionnement - Introduction à la haute disponibilité
Introduction à la sûreté de fonctionnement
Quelque soit le service rendu par un système informatique, il est essentiel que
les utilisateurs aient confiance en son fonctionnement pour pouvoir l'utiliser dans
de bonnes conditions.
Le terme « sûreté de fonctionnement »
caractérise le niveau de confiance d'un système informatique.
Une défaillance correspond à un dysfonctionnement
du service, c'est-à-dire un état de fonctionnement anormal ou plus
exactement non conforme aux
spécifications. Du point de vue de l'utilisateur, un service possède
deux états :
- service approprié, c'est-à-dire conforme aux attentes ;
- service inapproprié, c'est-à-dire non conforme aux attentes.
Une défaillance est imputable à une erreur, c'est-à-dire
un dysfonctionnement local. Toutes les erreurs ne conduisent pas nécessairement
à une défaillance du service.
Il existe plusieurs moyens de limiter les défaillances d'un service :
- la prévention des fautes consistant à éviter les fautes
en les anticipant.
- la tolérance aux fautes dont l'objectif est de fournir un service
conforme aux spécifications malgré les fautes en introduisant une redondance.
- l'élimination des fautes visant à réduire le nombre
de fautes grâce à des actions correctives.
- la prévision des fautes en anticipation les fautes et leur impact
sur le service.
Introduction à la haute disponibilité
On appelle « haute disponibilité » (en anglais « high availability »)
toutes les dispositions visant à garantir la disponibilité d'un service, c'est-à-dire
assurer le bon fonctionnement d'un service 24H/24.
Le terme « disponibilité » désigne la probabilité
qu'un service soit en bon état de fonctionnement
à un instant donné.
Le terme « fiabilité », parfois également utilisé,
désigne la probabilité qu'un système soit en fonctionnement normal sur une
période donnée. On parle ainsi de « continuité de service ».
La disponibilité s'exprime la plupart du temps sous
la forme de taux de disponibilité, exprimé en pourcentage, en ramenant
le temps de disponibilité sur le temps total. Le tableau suivant présente
le temps d'indisponibilité (en anglais downtime) sur une base d'une année (365 jours) en fonction
du taux de disponibilité :
| Taux de disponibilité |
Durée d'indisponibilité |
| 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 |
Evaluation des risques
En effet, la panne d'un système informatique peut causer une
perte de productivité et d'argent, voire des pertes matérielles ou humaines dans certains
cas critiques. Il est ainsi essentiel d'évaluer les risques liés à un
dysfonctionnement (faute) d'une des composantes du système d'information et de prévoir des
moyens et mesures permettant d'éviter ou de rétablir dans des temps acceptables tout incident.
Comme chacun le sait, les risques de pannes d'un système informatique
en réseau sont nombreux. L'origine des fautes peut être schématisée
de la manière suivant :
- Origines physiques : elles peuvent être d'origine naturelle ou criminelle :
- Désastre naturel (innondation, séisme, incendie)
- Environnement (intempéries, taux d'humidité de l'air, température) ;
- Panne matérielle ;
- Panne du réseau ;
- Coupure électrique.
- Origines humaines : elles peuvent être intentionnelles ou fortuites :
- Erreur de conception (bogue logiciel, mauvais dimensionnement du réseau) ;
- Origines humaines : elle peuvent être intentionnelles ou fortuites :
- Erreur de conception (bogue logiciel, mauvais dimensionnement du réseau) ;
- Origines opérationnelles : elle sont lié à un état du système
à un moment donné :
- Bogue logiciel ;
- Dysfonctionnement logiciel ;
L'ensemble de ces risques peuvent avoir différentes causes telles
que les suivantes :
- Malveillance intentionnelle.
Tolérance aux pannes
Puisqu'il est impossible d'empêcher totalement les pannes, une solution consiste à
mettre en place des mécanismes de redondance, en dupliquant
les ressources critiques.
La capacité d'un système à fonctionner malgré
une défaillance d'une de ses composantes est appelée tolérance aux pannes
(parfois nommée tolérance aux fautes », en anglais fault tolerance).
Lorsqu'une des ressources tombe en panne, les autres ressources prennent
le relais afin de laisser le temps aux administrateurs du système de remédier à l'avarie.
En anglais le terme de « Fail-Over Service » (noté FOS)
est ainsi utilisé.
Idéalement, dans le cas d'une panne matérielles, les éléments matériels fautifs
devront pouvoir être « extractibles à chaud » (en anglais
« hot swappable »), c'est-à-dire pouvoir être extraits puis remplacés, sans
interruption de service.
La sauvegarde
Néanmoins, la mise en place d'une architecture redondante ne permet que de s'assurer
de la disponibilité des données d'un système mais ne permet pas de
protéger les données contre les erreurs de manipulation des utilisateurs ou contre
des catastrophes naturelles telles qu'un incendie, une inondation ou encore un tremblement de terre.
Il est donc nécessaire de prévoir des mécanismes
de sauvegardes, idéalement sur des sites distants, afin de garantir la pérennité des données.
Par ailleurs, un mécanisme de sauvegarde permet d'assurer une
fonction d'archivage, c'est-à-dire de conserver les données dans un état correspondant
à une date donnée.