La panne d’un service au sein d’un réseau informatique est un problème qu’il faut prévenir si possible, et résoudre au plus vite lorsqu’elle n’a pas pu être évitée.
Lorsque le service en question est une brique fondamentale de nombreux autres services, comme la synchronisation temporelle via un serveur de temps qui implémente PTP ou NTP, alors la défaillance peut avoir des répercussions catastrophiques. Il existe heureusement plusieurs moyens pour se protéger contre les pannes.
Comprendre les causes potentielles de défaillances
En préambule à toute action sur le matériel ou le logiciel, il faut identifier les risques, c’est-à-dire les causes possibles, pour chaque panne. Tous les éléments du réseau doivent être analysés, depuis les aspects les plus matériels (alimentation électrique, câbles, etc.), jusqu’à la configuration des différentes briques logicielles, en passant par les sources de temps, leur emplacement dans l’architecture du réseau, etc. Plus le réseau est étendu et complexe, plus les points d’apparition de panne potentielle sont nombreux. Toutefois, un réseau minimaliste n’est pas forcément plus robuste qu’un réseau comportant de nombreuses machines, car une seule panne peu paralyser l’ensemble du réseau.
La redondance comme solution ?
Une fois que l’on a identifié les défaillances potentielles, on peut les éviter en utilisant la redondance. Par exemple, si une alimentation tombe en panne, cela n’aura pas d’impact si une deuxième prend le relais en attendant que la première soit réparée.
Créer une redondance ne signifie pas forcément faire une réplication exacte. Le terme doit être compris comme une redondance de service plus qu’une redondance exacte de matériel : on pourra par exemple avoir une seconde alimentation moins puissante pour pallier la panne de la première, qui peut être secondée par un onduleur et une batterie.
Par ailleurs, doubler chaque équipement pour être à l’abri de toutes les pannes qui peuvent survenir n’est pas suffisant. Au-delà du matériel, les moyens de communication sont importants. Lorsqu’on élabore l’architecture d’un réseau, il faut prévoir plusieurs chemins entre chaque point du réseau, de manière à garantir que les messages circuleront toujours de manière fluide. L’objectif premier est principalement d’augmenter la tolérance aux pannes du réseau, avec une bonne planification. Un service dégradé étant plus tolérable qu’une coupure totale.
La redondance extérieure
Parfois la panne sera provoquée par un problème de disponibilité d’un service externe au système informatique de l’organisation. Parmi les problèmes externes, on retrouve typiquement des coupures d’électricité, l’indisponibilité d’un cloud externe (et donc des données associées), la panne d’une horloge de référence (ou la dégradation de ses performances notamment en cas de brouillage d’un GNSS).
Pour illustrer, en cas de défaillance d’une horloge de référence, l’impact est total lorsque celle-ci cesse de fonctionner ou commence à dériver ; car la synchronisation temporelle est utile à la plupart des services d’une organisation.
Même si certains protocoles sont plus tolérants que d’autres, il est important pour tous (NTP, PTP, IRIG, etc.) de multiplier les horloges de référence. Avoir plusieurs horloges de référence permet de pallier efficacement la défaillance de l’une d’entre elles mais permet également de repérer si certaines d’entre elles commencent à dériver sans que cela n’affecte encore le réseau. Dans les protocoles qui le permettent, il est important de se synchroniser sur plusieurs sources de référence temporelle pour que la défaillance d’un équipement n’ait pas de répercussions plus loin dans le réseau.
Anticiper pour mieux résister
La gestion d’une panne sur un réseau tient plus de l’anticipation que de la réaction. La perturbation ou l’arrêt d’un service aura toujours des conséquences, même si on arrive à le remettre en marche très rapidement. Avec une bonne anticipation, il est possible de rendre les pannes et défaillances transparentes aux yeux des utilisateurs. Une bonne anticipation permet également de fournir de la haute disponibilité pour ses services, ce qui doit être l’objectif. Assurément, des pannes vont survenir dans un réseau informatique, mais il faut limiter au maximum leur impact.
Il faut donc se prémunir contre les défaillances, qu’elles viennent de l’extérieur ou de l’intérieur du réseau. Les défaillances extérieures comme les pannes des horloges de référence ou les problèmes de réseau électrique peuvent uniquement être anticipés en utilisant la redondance. En effet, dans ces cas précis, l’organisation n’a aucun contrôle sur la réparation du service.
Prioriser les services critiques
Plus le service considéré est critique, plus il est important de le rendre tolérant aux pannes. La synchronisation temporelle d’un réseau est une tâche sur laquelle repose de très nombreuses applications et assurer sa continuité est crucial. Anticiper les pannes commence dans ce cas par prévoir une architecture qui évite les nœuds de contention : si toutes les routes de synchronisation passent par un seul serveur alors si celui-ci tombe en panne plus aucune machine ne sera synchronisée. Il faut donc envisager une architecture avec deux serveurs de temps, qui ne sont pas physiquement dépendants des mêmes routes au sein du réseau informatique.
Au-delà de la panne, l’amélioration de la QoS
Certains protocoles réseaux comme PTP, résolvent l’apparition de pannes dans le réseau avec des mécanismes d’élection d’horloges maîtres. Toutefois, il est impossible de se reposer uniquement sur ce type de mécanisme. Pour proposer un service fiable et hautement disponible, il faut considérer que chaque partie du réseau peut et va tomber en panne. Il convient alors de s’assurer que chaque panne individuelle ne peut pas arrêter le service. De nouveau, le seul moyen efficace pour pallier les défaillances potentielles est d’utiliser la redondance matérielle.
La redondance de matériel a par ailleurs un autre avantage : le matériel supplémentaire n’a pas vocation à être dormant. Il peut être utilisé pour réduire la charge de chaque équipement dans le réseau. Cela augmente ainsi la qualité de service et la disponibilité des systèmes.
En conclusion
Rajouter du matériel dans le réseau pour créer des redondances le rend plus complexe à configurer et à maintenir, mais c’est nécessaire pour le rendre tolérant aux pannes. Le coût initial évitera bien des problèmes lors de la venue d’une panne. Comme le dit l’adage des spécialistes de la tolérance aux pannes : avant la panne c’est trop cher, mais après la panne c’est trop tard.
Expert en gestion des temps et présent dans plus de 140 pays, Bodet Time est un acteur français majeur de la synchronisation horaire et du temps fréquence. Besoin d’accompagnement pour concevoir une architecture de distribution temporelle performante, sécurisée et hautement disponible ?