Alta disponibilidad (HA): qué es y cómo implementarla
Alta disponibilidad significa que tu servicio sigue funcionando incluso cuando algo falla. Esta guía explica los conceptos, métricas y patrones para implementarla.
¿Qué es alta disponibilidad?
Alta disponibilidad (HA) es la capacidad de un sistema de seguir operando cuando uno o más componentes fallan. Se mide como porcentaje de uptime: 99.9% = 8.7 horas de downtime/año, 99.99% = 52 minutos/año.
Los nueves de disponibilidad
99% = 3.65 días de downtime/año. 99.9% (tres nueves) = 8.7 horas/año. 99.99% (cuatro nueves) = 52 minutos/año. 99.999% (cinco nueves) = 5 minutos/año. Cada nueve adicional es exponencialmente más caro de lograr.
Puntos únicos de fallo (SPOF)
Un SPOF es cualquier componente cuyo fallo derriba todo el sistema. Ejemplos: un solo servidor, un solo disco, una sola conexión de red, un solo datacenter. HA elimina SPOFs con redundancia.
Patrones de HA
Active-Passive: un nodo activo + uno en standby que toma el control si el primero falla. Active-Active: múltiples nodos activos con load balancing. Multi-región: réplicas en diferentes datacenters para sobrevivir a fallos de sitio completo.
HA para bases de datos
Replicación master-slave (PostgreSQL streaming replication), clusters multi-master (Galera para MySQL), o servicios managed con failover automático. Siempre tener backups además de replicación.
HA para aplicaciones web
Load balancer (HAProxy, Nginx) distribuyendo tráfico entre múltiples instancias. Health checks para detectar nodos caídos. Auto-scaling para manejar picos. Stateless design para facilitar el escalado horizontal.
Costo vs beneficio
No todo necesita 99.99%. Un blog personal con 99.9% es suficiente. Un e-commerce necesita al menos 99.95%. Un sistema de pagos necesita 99.99%+. Diseñá la HA según el impacto real del downtime en tu negocio.