La tolerancia a fallos define el proceso que permite al sistema operativo responder a fallos en el hardware o el software. La tolerancia a fallos es importante para el funcionamiento continuo del negocio y la alta disponibilidad de aplicaciones y sistemas, que funcionen independientemente de los problemas.
¿Cómo garantizar la tolerancia a fallos?
Para un funcionamiento sin problemas, no debe haber componentes en el sistema que, en caso de mal funcionamiento, causarían un fallo en todo el sistema. Aspectos clave de un sistema sostenible: equilibrio de carga y evitar que exista un único punto de fallo.
La tolerancia a fallos sigue dos modelos principales.
- Normal operación del sistema — cuando una estructura tolerante a fallos encuentra un fallo, pero continúa funcionando normalmente. El sistema no ve cambios en las métricas de rendimiento, como el ancho de banda o el tiempo de respuesta.
- Disminución gradual del rendimiento cuando se producen problemas. El impacto de una falla en el rendimiento del sistema es proporcional a la gravedad de la falla — una falla menor tendrá un impacto menor en el rendimiento del sistema en lugar de causar una falla completa.
Los elementos principales de un sistema tolerante a fallos
Los sistemas tolerantes a fallos utilizan componentes redundantes que reemplazan automáticamente los elementos defectuosos para evitar la pérdida de rendimiento.
Los sistemas de hardware pueden estar respaldados por sistemas idénticos o equivalentes. Un ejemplo típico es un servidor tolerante a errores mediante la implementación de un servidor idéntico que se ejecuta en paralelo y refleja todas sus operaciones. Por ejemplo, una matriz redundante de discos independientes (RAID), que combina componentes de discos físicos para lograr redundancia y mejorar el rendimiento.
Los sistemas de software se pueden ser tolerantes a fallos mediante la copia de seguridad con otro Software. Un ejemplo común es hacer una copia de seguridad de una base de datos que contiene datos de clientes para garantizar que se replique continuamente a otra máquina. Si la base de datos principal falla, las operaciones continuarán, ya que se replican automáticamente y se redirigen a la base de datos de respaldo.
Las Fuentes de alimentación también se pueden ser tolerantes a fallos: el sistema está equipado con una o más Fuentes de alimentación que no necesitan suministrar energía al sistema si la fuente de alimentación primaria funciona normalmente. En caso de falla o mal funcionamiento de la fuente de alimentación principal, puede retirarse y reemplazarse por otra para que se hace cargo de sus funciones y garantizar el rendimiento del sistema.