| Artículos | 15 ABR 2000

Sistemas cluster, la disponibilidad total de la red

Tags: Histórico
Javier Gª Moratalla.
Los servidores son, cada vez más, una parte importante dentro de la informática de cualquier empresa, independientemente del tamaño de ésta. Ficheros, impresoras, aplicaciones, correo electrónico, acceso a Internet, no son más que ejemplos de los usos que se dan a este tipo de maquinas, y sin los cuales no podemos concebir el trabajo diario de cualquier empresa.
Lejos ha quedado ya la época en que el servidor se encendía a primera hora de la mañana, y se apagaba cuando terminaba la jornada laboral porque su uso ya no era necesario. La realidad de hoy es bien distinta y el funcionamiento del servidor es reclamado día y noche, incluso se llegan a valorar los períodos de inactividad de éste como pérdidas económicas para la empresa, bien sea por la inactividad de los usuarios, o por el negocio que han dejado de generar, como es el caso de los nuevos sistemas de comercio electrónico. Así pues, la importancia de determinadas máquinas y determinados servicios, así como conseguir la disponibilidad total de éstas, es un fin que muchos fabricantes persiguen y el rasgo diferenciador entre ellos.

Problemas ante los que enfrentarse
Precisamente, una de las diferencias entre una máquina diseñada para ser un servidor y una estación de trabajo, es tratar de cubrir determinados fallos en el sistema, fallos que harían que dejara de prestar servicio a sus clientes. Son los denominados SPOF (Single Point Of Fauilure), puntos dentro del sistema en los cuales un fallo supondría que la máquina no podría continuar con su actividad normal. Es más, lo normal sería que todo el conjunto se viniese abajo, impidiendo de este modo que continuara prestando servicio. Entre estos puntos nos encontramos con prácticamente todos los aspectos relacionados en la arquitectura de un ordenador desde el punto de vista del hardware, pero además también nos encontramos con toda la configuración lógica, es decir con el propio software que gobierna los distintos componentes del hardware como otra fuente más de SPOF dentro del propio sistema.
Para cubrir determinados aspectos o elementos puntuales como puedan ser las fuentes de alimentación, los discos duros, o el mismo procesador principal, se suele recurrir a la redundancia en los componentes, es decir, duplicar estos para que, en caso de que uno falle, todavía quede otro que cumpla con su cometido.

Componentes principales y su redundancia
Entre los ejemplos más significativos de redundancia en los componentes omnipresentes en la gran mayoría de los servidores actuales nos encontramos:
- El procesador. Este primordial apartado suele cubrirse mediante la inclusión de varias unidades semejantes que, además de asegurar la debida y necesaria redundancia, hacen que el sistema general esté optimizado para permitir su funcionamiento en paralelo. Es decir, en condiciones normales los dos o más procesadores trabajarían conjuntamente, aportando un mayor rendimiento al sistema, pero caso de que perdiéramos alguno, esto no impediría que el servidor continuase funcionado con normalidad, salvo la lógica repercusión en el rendimiento al sobrecargar a los que continúan trabajando.
- Los discos duros. Este fue, seguramente, uno de los primeros y principales puntos en ser cubierto por la redundancia. La aparición de los sistemas RAID, y sus diferentes implementaciones, consiguen que la información siga siendo accesible incluso ante la caída de un disco. Inicialmente se buscó la tolerancia a fallos únicamente creando discos espejos (RAID-1), en los que la información se guarda de forma idéntica en dos discos, para caso de perder uno de ellos poder acceder al otro como si no hubiese ocurrido nada. Posteriormente se recurrieron a los sistemas de bandas con paridad (RAID-0, RAID-3 y RAID-5), es decir, la información se distribuye entre varios discos, y en otro se guardan un conjunto de paridades que permitirían al sistema mantener la información completa aunque se perdiera un disco. Con estas complejas técnicas se consigue, además de la buscada y ansiada tolerancia a fallos, un aumento en el rendimiento del sistema en operaciones de lectura y escritura, ya que la información está siendo escrita simultáneamente en varios discos a la vez, y no olvidemos que la velocidad de una controladora (dispositivo enteramente electrónico) es muy superior a la de un disco (dispositivo mecánico).
- La Memoria RAM: De cara a proteger la información contenida en la memoria principal surgen diversos mecanismos como la memoria con paridad, que permite determinar si un dato es correcto gracias a la introducción de un noveno bit que nos permite precisamente chequear la información. La evolución de la memoria con paridad nos lleva a la aparición de otras técnicas más complejas, pero mucho más fiables, como pueda ser el ECC (Error Correction Code) que no sólo permite, al igual que el sistema de paridad, la detección de un error en un único bit, sino que además es capaz de detectar un error hasta en cuatro bits y corregirlo inmediatamente en uno.
- Fuentes de alimentación y SAI. La alimentación de un equipo es la fuente energética que posibilita su funcionamiento. Aquí son dos los aspectos a proteger, por un lado la falta de corriente, que se resuelve hoy gracias a los sistemas de alimentación ininterrumpidos (SAI), que permiten al servidor continuar funcionando durante un determinado periodo aunque se le corte el flujo eléctrico. Mientras, por otro lado, tenemos la fuente de alimentación, que transforma la corriente alterna en continua, y que como todo dispositivo eléctrico está llamado a sufrir una avería en el momento más inoportuno. La solución en este caso resulta bastante sencilla, para cubrir esta posible avería la solución más simple consiste en la mera duplicación de las fuentes de alimentación. Pero, en la constante búsqueda de mejoras tecnológicas y optimización de los recursos existentes, los nuevos sistemas implementan sistemas de alimentación en donde la carga de corriente es compartida y cada fuente funciona a una capacidad reducida bajo condiciones normales, para configuraciones redundantes. En el hipotético caso de fallo en alguna de las fuentes, este hecho ocasiona que las otras fuentes incrementen su capacidad energética de salida rápidamente, antes de que el sistema experimente interrupción alguna.
- Las tarjetas de red. No olvidemos que la tarjeta de red es la puerta principal de acceso compartido a nuestro servidor, si éste pierde esta conexión, por muchos mecanismos que tengamos de tolerancia a fallos, dejará de prestar los servicios necesarios al resto de equipos que configuran el entorno de trabajo. Para resolver esta delicada cuestión se recurre, una vez más, a la duplicidad de los componentes. Inicialmente, se disponía de una segunda tarjeta de red inactiva a la espera de que falle la primera, posteriormente y como evolución se ha conseguido, gracias a protocolos como el FastEtherChannel y otros, que la carga de trabajo se distribuya por hasta cuatro tarjetas de modo que conseguimos aumentar el rendimiento a la vez que estamos protegidos ante la pérdida de una tarjeta de red.
- Software. Por último, otro punto que puede provocar una caída o un “cuelgue” en el sistema, son las propias aplicaciones, o incluso el mismísimo sistema operativo, como bien saben y padecen nuestros sufridos clientes. Una aplicación que por falta de recursos, o por un func
Comentar
Para comentar, es necesario iniciar sesión
Se muestran 0 comentarios