Skip to main content

Alta Disponibilidad (HA) vs Fault Tolerance (FT)

Sea cual sea el tipo de organización que se tenga, se basa en varios servicios de TI. Todos estos se ejecutan sobre algún hardware y sistemas operativos (o hipervisores), y el flujo de trabajo empresarial puede tambalearse en caso de fallos del hardware o del sistema operativo. Además, incluso si hay copias de seguridad disponibles, el procedimiento de restauración puede llevar bastante tiempo y generar pérdidas comerciales tanto en ingresos como en reputación.

Existen exactamente dos formas de mitigar los riesgos de inactividad de la infraestructura de TI: alta disponibilidad (HA) y tolerancia a fallos (FT). 

image.png

HA

La alta disponibilidad es la capacidad de una infraestructura de recuperarse rápidamente después de la falla de un componente y permanecer operativa la mayor parte del tiempo. Puede haber tiempos de inactividad en los sistemas de alta disponibilidad durante un breve período de tiempo necesario para la conmutación por error (desde un par de segundos hasta un par de minutos), pero, lo que es más importante, no se pierden datos. El RPO es cero y el RTO es cercano a minutos en entornos de alta disponibilidad. A menudo se mide para los servicios en la nube como el porcentaje de tiempo en el que el servicio está disponible durante todo el año, por ejemplo, 99,9 % (aproximadamente 9 horas de inactividad en el año) o 99,999 % (aproximadamente cinco minutos y medio de inactividad en el año).

Beneficios de la alta disponibilidad
Relación costo-beneficio en comparación con las soluciones de tolerancia a fallas.
Menor complejidad. Hay muchos proveedores que ofrecen alta disponibilidad lista para usar. También existen herramientas gratuitas (o de código abierto) para soluciones de alta disponibilidad (HA) caseras.
Escalabilidad. Dado que la mayoría de las soluciones de alta disponibilidad utilizan conceptos de clúster, puede ser más fácil escalarlas que una infraestructura que no sea de alta disponibilidad.
RPO y RTO mucho mejores en comparación con las copias de seguridad y la replicación de recuperación ante desastres.
Recuperación automática de servicios sin intervención humana.
Desventajas de la alta disponibilidad
Interrupción de la ejecución de servicios o aplicaciones de componentes fallidos. El tiempo de inactividad no es enorme, pero sigue estando presente.
Pérdida de datos debido a fallas (solo los datos que residen en la RAM y no se han escrito en un almacenamiento no volátil).
Sin protección contra ransomware. Las copias de seguridad o la replicación de recuperación ante desastres deben aplicarse junto con la alta disponibilidad para aplicar un buen enfoque de continuidad empresarial.
Consume recursos. La alta disponibilidad requiere más recursos de hardware para estar operativa que una infraestructura que no sea de alta disponibilidad (o que no sea de FT).
¿Cómo implementar sistemas de alta disponibilidad?
La alta disponibilidad se puede implementar a nivel de aplicación o de infraestructura. Algunas aplicaciones tienen alta disponibilidad incorporada, como MS SQL (grupos de disponibilidad Always On básicos), pero la alta disponibilidad más común se aplica a nivel de infraestructura con agrupamiento y virtualización. Se combinan varios servidores de hardware en un solo clúster con un hipervisor, aplicaciones y servicios que se ejecutan sobre él. Todos los miembros del clúster tienen almacenamiento compartido y base de datos de configuración compartida.

En caso de que falle un miembro del clúster, los servicios/aplicaciones/VM/contenedores que se ejecutan en él cambian a los otros miembros del clúster en buen estado. El clúster de conmutación por error de Windows Server, el clúster de vSphere con función de alta disponibilidad, el clúster de Kubernetes o el clúster de oVirt son los ejemplos perfectos. El almacenamiento compartido puede proporcionarlo una SAN externa o una solución de almacenamiento definida por software (como StarWind VSAN). Los proveedores de hardware ofrecen nodos listos para clúster con un paquete de pila de software, por lo que funciona de inmediato sin configuración adicional.

FT

La tolerancia a fallas es la capacidad de una infraestructura de cambiar de manera transparente y automática un servicio/aplicación de un hardware o sistema operativo fallido a otro hardware en buen estado sin pérdida de datos ni interrupción del servicio. No puede haber tiempo de inactividad en los sistemas FT ni siquiera por un corto período de tiempo. Ciertamente, aún puede ocurrir algún pequeño tiempo de conmutación por error (milisegundos/un par de segundos), pero este tipo de falla es apenas perceptible para los usuarios o las aplicaciones externas que dependen del servicio FT. Después de todo, tanto el RPO como el RTO son cero.

Ahora, un escenario de la vida real: estamos operando una fábrica con una línea de producción controlada digitalmente y un sistema SCADA. Incluso un breve tiempo de inactividad del software puede provocar daños en la línea/producto final o una larga recuperación de la producción. El sistema FT cambia de forma transparente la aplicación de control a otro hardware en caso de falla de un componente y la línea de productos continúa funcionando sin interrupciones de ningún tipo.

Beneficios de la tolerancia a fallas
Tiempo de inactividad y RTO cero (en el peor de los casos, el RTO está presente pero pasa completamente desapercibido para los usuarios o las aplicaciones externas).
Pérdida de datos y RPO cero