Salta ai contenuti

Fase 3 — Failover

La Fase 3 aggiunge il failover con controllo dello stato sulla zona creata nella Fase 1: un bilanciatore del carico DNS F5 XC restituisce risposte diverse per un nome in base allo stato del pool, in modo che il traffico venga instradato automaticamente verso un pool sano.

Lo stack del bilanciatore del carico DNS è composto da tre risorse F5 XC e un record nella zona:

RisorsaRuolo
xcsh_dns_lb_health_checkVerifica ciascun membro (HTTP, HTTPS, TCP, ICMP o UDP) per determinare lo stato del pool
xcsh_dns_lb_poolUn insieme di membri con una modalità di bilanciamento del carico (ROUND_ROBIN, PRIORITY, …) e un riferimento al controllo dello stato
xcsh_dns_load_balancerRegole che selezionano un pool per richiesta, con un pool di fallback
lb_record (in xcsh_dns_zone)Associa un nome nella zona al bilanciatore del carico DNS

Il modulo dns-lb esprimerà queste risorse, e il modulo della zona includerà una voce lb_record che punta al bilanciatore del carico — in modo che un singolo terraform apply costruisca l’intero percorso di failover.

Una volta rilasciato il modulo, la dimostrazione del failover:

  1. Distribuirà due pool (primario e secondario) dietro il bilanciatore del carico DNS, con un controllo dello stato.
  2. Risolverà il nome bilanciato e confermerà che restituisce la risposta del pool primario.
  3. Renderà il pool primario non sano e confermerà che la risoluzione passa al secondario — il gate di prontezza interroga dig fino a quando la risposta non cambia.
  4. Ripristinerà il pool primario e confermerà il failback.

Nel frattempo, proseguire con la Fase 4 — Teardown per rimuovere la zona della Fase 1.