Sistemas tolerantes a las fallas

¿Qué es la tolerancia a los fallos?

La tolerancia a los fallos describe un nivel superior de disponibilidad caracterizado por un tiempo de funcionamiento de 5 nueves (99,999%) o mejor. Los sistemas con tolerancia a los fallos son capaces de ofrecer estos niveles de disponibilidad, porque pueden "tolerar" o soportar tanto los "fallos" como las fallas del hardware y el software. Típicamente lo hacen ya sea vigilando proactivamente e impidiendo que los sistemas críticos fallen en primer lugar, o mitigando completamente el riesgo de un componente catastrófico o un fallo del sistema.

Tolerancia a los fallos basada en el software frente a la basada en el hardware

La tolerancia a las fallas puede lograrse utilizando tanto enfoques basados en software como en hardware.

En un enfoque basado en el software, todos los datos comprometidos en el disco se reflejan en sistemas redundantes. Enfoques más sofisticados basados en software también replican los datos no comprometidos, o los datos en memoria, a un sistema redundante. En el caso de un fallo del sistema primario, un sistema secundario de respaldo reanuda su funcionamiento, asumiendo el control desde el momento exacto en que el sistema primario falla, de modo que no se dupliquen ni se pierdan transacciones o datos.

En un enfoque basado en el hardware, los sistemas redundantes funcionan simultáneamente. Los servidores paralelos realizan tareas idénticas, de modo que si un servidor falla, el otro servidor sigue procesando las transacciones o prestando servicios. Este enfoque se basa en que la probabilidad estadística de que ambos sistemas fallen simultáneamente es extremadamente baja. En realidad, sólo se necesita un servidor para entregar las aplicaciones, pero el hecho de tener dos servidores ayuda a asegurar que al menos uno esté siempre funcionando.

Cómo everRun® Enterprise y ztC™ Edge ofrecen cargas de trabajo tolerantes a fallos

Stratus everRun El software empresarial y las plataformas informáticas Stratus ztC Edge Las plataformas informáticas y el software empresarial utilizan enfoques basados en el software para ofrecer aplicaciones tolerantes a fallos y proteger los datos.

El principal reto de los enfoques basados en programas informáticos es replicar los datos de manera eficiente y reducir al mínimo los gastos generales del sistema. Si no se replican lo suficiente, los tiempos de recuperación aumentan. Si se replica con demasiada frecuencia, se utilizan demasiados recursos del sistema sólo para garantizar la disponibilidad.

everRun Enterprise y Stratus Redundant Linux, la plataforma operativa que potencia Stratus' ztC Edge replican todos los datos escritos en el disco (para cargas de trabajo de alta disponibilidad) y utilizan un motor único de checkpointing para replicar continuamente los datos en los estados de la memoria y la CPU (para cargas de trabajo tolerantes a fallos). Todas las operaciones de E/S se ponen en cola hasta que se completan y verifican los puntos de control. Algoritmos propios ajustan dinámicamente la frecuencia de los puntos de control, basándose en el tipo y la cantidad de cambios de datos y el rendimiento de E/S. Si/cuando un nodo falla, se utiliza una pausa de dos segundos para evitar escenarios de cerebro dividido, lo que resulta en un tiempo de recuperación de menos de cinco segundos, por debajo del umbral TCP/IP para poner en cola y reenviar las solicitudes.

Además de su motor de control único y altamente eficiente, las soluciones de Stratus se diferencian por su simplicidad operativa. No se requieren modificaciones en la aplicación o en el sistema operativo invitado para que sean compatibles con los clusters. No se necesitan scripts de conmutación por error adicionales para garantizar la disponibilidad de las aplicaciones y la integridad de los datos. Todo lo que se necesita es que las aplicaciones se instalen en una máquina virtual y se lancen para que sean tolerantes a las fallas.

alta disponibilidad, sistemas tolerantes a fallos, tolerancia a fallos
sistemas tolerantes a fallos, tolerancia a fallos
sistemas tolerantes a fallos, tolerancia a fallos, alta disponibilidad

Cómo el ftServer® entrega cargas de trabajo tolerantes a las fallas

Stratus ftServer utiliza un enfoque basado en el hardware para ofrecer aplicaciones y datos tolerantes a las fallas.

El principal reto de los enfoques basados en el hardware es asegurar la sincronización precisa de los procesos e hilos, asegurándose de que las mismas cosas ocurran exactamente al mismo tiempo en ambos nodos de un sistema redundante.

Stratus ftServer utiliza matrices de puertas programables de campo patentadas (FPGA) para asegurar el procesamiento en dos mitades idénticas de un sistema ftServer . Las dos unidades idénticas reemplazables por el cliente (CRU) funcionan en paralelo. Cada una actúa como servidor primario o secundario según sea necesario. Cada una ejecuta el mismo proceso al mismo tiempo. Con ftServer, no hay tiempo de recuperación cuando hay un fallo en un solo componente o CRU. El CRU disponible simplemente toma el control como el servidor primario hasta que el CRU no disponible sea reemplazado. Para las organizaciones que no pueden tolerar ni un segundo de tiempo de inactividad no planificado, Stratus ftServer es una opción viable.

Además de su uso de las APGL y del enfoque de bloqueo, Stratus ftServer se diferencia por su simplicidad operativa. Las aplicaciones, las plataformas de virtualización o los sistemas operativos invitados que se instalan en ftServer no requieren una modificación o configuración especial para que sean tolerantes a las fallas.