Infoclimat
Infoclimat Rapport d'incident
INC-2026-06-20
P1 · Infrastructure
● Sévérité P1 Post-mortem 2026-06-20 ✓ Résolu

Une coupure de courant a fait tomber l'hyperviseur.
Une configuration fragile l'a gardé K.O. 5 heures de plus.

Une panne électrique datacenter a crashé l'hyperviseur en boucle pendant la nuit. Le courant est revenu à 04:02 — mais sans démarrage automatique ni routage persisté, les sites ne sont remontés qu'à 08:55.

DISPONIBILITÉ — 20 JUIN 2026 (heure locale) Hyperviseur (courant) Service public (sites)

L'écart 04:02 → 08:55 = ~4 h 53 d'indisponibilité évitable : le matériel était rétabli, mais rien ne s'est relancé tout seul.

Déclencheur
Panne électrique datacenter
Nature
Crashs répétés (×4)
Impact
100 % du trafic public
Matériel
Sain — 0 erreur
01

Résumé

Durant la nuit, une panne électrique dans le datacenter de l'hébergeur a provoqué plusieurs coupures brutales successives de l'hyperviseur principal sur une fenêtre d'environ deux heures. À chaque redémarrage, l'infrastructure est remontée dans un état partiel et obsolète : aucun composant virtualisé (VM/conteneur) ni la configuration réseau n'était prévu pour se restaurer automatiquement.

La cause du redémarrage est externe et le matériel est sain. C'est le manque de résilience de la configuration qui a transformé une coupure de courant en panne applicative de plusieurs heures.

02

Chronologie

02:0300:03 UTC
Crash1er crash brutal de l'hyperviseur — début d'un incident électrique sur le rack hébergeur.
02:03→ 04:02
Crash-loopLa machine remonte puis re-crashe à plusieurs reprises (courant revenu puis re-coupé), au rythme de la panne datacenter.
04:0202:02 UTC
BootDernier démarrage, l'hyperviseur se stabilise. Mais : invités non redémarrés + NAT pointant vers un ancien reverse-proxy inexistant → sites totalement KO.
08:1306:13 UTC
ManuelBase relationnelle (MariaDB) démarrée manuellement.
08:2506:25 UTC
DiagSignalement et début de l'investigation.
08:3506:35 UTC
Fix 1Règles NAT obsolètes supprimées → le trafic atteint le reverse-proxy actif. La plupart des sites répondent.
08:5006:50 UTC
Fix 2Base timeseries (TimescaleDB), restée arrêtée, démarrée → fin des lenteurs et des 502 sur les pages temps-réel.
08:5506:55 UTC
RétabliRétablissement complet confirmé : pages temps-réel servies en ~1 s, en direct comme via le CDN.
03

Causes

Déclencheur — externe, confirmé

Panne électrique datacenter

Plusieurs coupures d'alimentation brutales en ~2 h. Confirmé par la corrélation exacte entre l'heure du 1er crash (logs : arrêt net, sans kernel panic, sans erreur mémoire ECC, sans surchauffe) et la page de statut publique de l'hébergeur, qui signale deux incidents électriques successifs sur le rack concerné, sur la même fenêtre horaire. Le matériel du serveur est sain.

Cause n°1 — routage entrant

NAT figé sur un ancien reverse-proxy

Les règles 80/443 sont recréées au boot depuis un fichier réseau qui codait en dur l'adresse d'un reverse-proxy déclassé. Les règles correctes avaient été ajoutées à chaud, sans être persistées. Au reboot, seules les anciennes — vers un hôte mort — ont été rechargées : tout le trafic entrant tombait dans le vide.

Cause n°2 — base relationnelle

MariaDB non redémarrée

Base non configurée en démarrage automatique : restée arrêtée plusieurs heures avant un démarrage manuel.

Cause n°3 — base timeseries

TimescaleDB non redémarrée

Également arrêtée et sans autostart. Les pages temps-réel l'interrogent : chaque requête bloquait jusqu'au timeout TCP (~18-31 s) → temps de réponse saturés et erreurs 502. Le serveur applicatif, lui, n'était pas en cause (charge faible, ressources disponibles).

04

Résolution

Trois correctifs appliqués en production : (1) suppression des règles NAT obsolètes, (2) démarrage de la base relationnelle, (3) démarrage de la base timeseries. Vérification de bout en bout : page temps-réel de référence à ~1 s (contre 18-31 s / 502 pendant l'incident), en accès direct à l'origine et via le CDN public.

⚠️ Correctifs temporaires (en mémoire). Ils ne survivront pas à un nouveau redémarrage tant que les actions de priorité haute ci-dessous n'auront pas été appliquées.
05

Actions correctives

Priorité haute — empêcher la récidive
Priorité moyenne — robustesse
Priorité basse — process
06

Enseignements

Ce qui a bien fonctionné — diagnostic méthodique (réseau → routage → bases → applicatif), isolation rapide de chaque cause, vérifications de bout en bout, et corrélation du crash avec l'incident datacenter.

Ce qui doit s'améliorer — la résilience au redémarrage. Une coupure d'alimentation est inévitable à terme ; un crash de l'hyperviseur ne devrait jamais entraîner une indisponibilité totale de plusieurs heures.

Risque résiduel — tant que la priorité haute n'est pas traitée, l'incident est intégralement reproductible au prochain redémarrage.