Point de défaillance unique
Un point de défaillance unique (single point of failure ou SPOF en anglais) est un point d'un système informatique dont le reste du système est dépendant et dont une panne entraîne l'arrêt complet du système.
Le point de défaillance unique a comme principale caractéristique de ne pas être protégé (redondant). Il est donc un risque pour la disponibilité du système. Dans la définition « single point of failure », le mot anglais single souligne le caractère unique et donc fragile du « composant ».
La notion de point de défaillance unique est fortement liée à celle de service, dans la mesure où un problème sur le point concerné entraîne une interruption de service.
La présence d'un point de défaillance unique dans un système augmentant la probabilité d'apparition d'un déni de service, elle entraîne un risque sur la qualité de service.
Dans un cadre de haute disponibilité, il est impossible de laisser des points individuels de défaillance dans un système.
Exemples
Architecture physique
Potentiellement, tous les éléments d'une architecture physique peuvent devenir des points individuels de défaillance. Les éléments principaux sont :
- le proxy ;
- le pare-feu (firewall) ;
- le routeur ;
- l'opérateur réseau ;
- le serveur de répartition de charge ;
- le serveur de service (HTTP, LDAP, Base de données, stockage, etc.) ;
- tout câble ou interface réseau ;
- l'alimentation électrique.
Selon les conditions où se situe l'hébergement de services à distance, on peut également l'appliquer au centre de données où est hébergé l'architecture :
- catastrophe naturelle (risque sismique, d’inondation, de fontis (effondrement de sols (à Paris par exemple, en raison des nombreuses carrières))) ;
- catastrophe industrielle (catastrophe nucléaire et zone d'exclusion nucléaire associée, explosion d'une usine pétrochimique) ;
- risque de bombardement, lors d'une guerre ;
- risque d'incendie (les centres sont généralement équipés de protection contre les incendies).
Architecture logicielle
Il en va de même pour nombre d'éléments de l'architecture logicielle, dans le cadre d'une Architecture Orientée Service (SOA). Parmi les éléments les plus sensibles, et par conséquent les plus sujets à attaques, on doit citer :
- Les services de localisation de ressources logicielles comme DNS.
- Les services d'annuaire, bases de l'authentification de l'utilisateur d'une application. Par exemple, LDAP ou Microsoft Active Directory.
- Les systèmes de gestion de bases de données.
Le risque engendré par la défaillance d'un de ces éléments doit être réduit par l'application du principe de redondance.
Détection
Les points individuels de défaillance sont fortement liés à la notion de service. Un SPOF peut donc ne pas être détecté du point de vue d'un service défini (comme le fonctionnement d'un intranet), mais être évident du point de vue d'un autre service (comme un service d'hébergement de sites web).
Il est par conséquent nécessaire de faire une cartographie détaillée et exhaustive d'un système pour pouvoir détecter les points individuels de défaillance.
Élimination
La principale technique d'élimination d'un point individuel de défaillance, quel que soit le système dont il fait partie, consiste à ajouter une redondance du point de défaillance.