Aller au contenu

Phase 3 — Basculement

La phase 3 ajoute un basculement avec contrôle d’état par-dessus la zone créée lors de la Phase 1 : un équilibreur de charge DNS F5 XC retourne des réponses différentes pour un nom en fonction de l’état du pool, de sorte que le trafic est automatiquement acheminé vers un pool sain.

La pile de l’équilibreur de charge DNS repose sur trois ressources F5 XC et un enregistrement dans la zone :

RessourceRôle
xcsh_dns_lb_health_checkSonde chaque membre (HTTP, HTTPS, TCP, ICMP ou UDP) pour déterminer l’état du pool
xcsh_dns_lb_poolUn ensemble de membres avec un mode d’équilibrage de charge (ROUND_ROBIN, PRIORITY, …) et une référence au contrôle d’état
xcsh_dns_load_balancerRègles permettant de sélectionner un pool par requête, avec un pool de secours
lb_record (dans xcsh_dns_zone)Associe un nom dans la zone à l’équilibreur de charge DNS

Le module dns-lb exprimera ces ressources, et le module de zone recevra une entrée lb_record pointant vers l’équilibreur de charge — ainsi, un seul terraform apply construit l’intégralité du chemin de basculement.

Une fois le module livré, la démonstration de basculement effectuera les opérations suivantes :

  1. Déployer deux pools (principal et secondaire) derrière l’équilibreur de charge DNS, avec un contrôle d’état.
  2. Résoudre le nom équilibré en charge et confirmer qu’il retourne la réponse du pool principal.
  3. Rendre le pool principal défaillant et confirmer que la résolution bascule vers le pool secondaire — la porte de disponibilité interroge dig jusqu’à ce que la réponse change.
  4. Restaurer le pool principal et confirmer le retour en arrière.

En attendant, passez à la Phase 4 — Démantèlement pour supprimer la zone de la Phase 1.