glossaire

Haute disponibilité (HA)

La haute disponibilité (HA) est la capacité d’un système à rester en service malgré la défaillance d’un de ses composants. Elle repose sur deux ingrédients indissociables : de la redondance (plusieurs instances capables de rendre le service) et un mécanisme de bascule automatique qui détecte la panne et redirige le trafic sans intervention humaine.

Les neufs, et ce qu’ils veulent dire

La disponibilité s’exprime en pourcentage de temps de service sur une période. Les ordres de grandeur parlent d’eux-mêmes : 99,9 % (« trois neufs ») autorisent environ 8 h 45 d’indisponibilité par an ; 99,99 % en autorisent 52 minutes ; 99,999 %, à peine plus de 5 minutes. Chaque neuf supplémentaire coûte disproportionnément plus cher que le précédent — matériel doublé, complexité de bascule, tests — ce qui fait du niveau visé une décision économique avant d’être une décision technique.

Les mécanismes classiques

En actif-passif, une instance sert le trafic et une autre attend, prête à prendre le relais ; le protocole VRRP (implémenté par keepalived) fait migrer une adresse IP virtuelle vers le survivant. En actif-actif, toutes les instances servent en parallèle derrière un répartiteur de charge, qui écarte celles dont les health checks échouent. Pour les systèmes à état (bases de données, systèmes de consensus comme etcd), la redondance ne suffit pas : il faut un quorum — une majorité d’instances d’accord entre elles — pour éviter le split-brain, la situation où deux moitiés du cluster se croient chacune légitime et divergent.

Kubernetes applique ces principes à l’échelle applicative : plusieurs replicas d’un Deployment, des probes qui écartent les pods défaillants, des PodDisruptionBudgets qui bornent les interruptions volontaires.

Ce que la HA n’est pas

La haute disponibilité protège contre la panne d’un composant, pas contre la perte ou la corruption de données — une écriture erronée est répliquée avec la même fiabilité que les autres. Elle ne remplace ni les sauvegardes ni un plan de reprise d’activité, qui répondent à d’autres scénarios. Et une bascule qui n’a jamais été déclenchée volontairement n’est pas un mécanisme de HA : c’est une hypothèse. Le test régulier de la bascule fait partie de la définition, pas des raffinements.