Introducción al Cluster



Documentos relacionados
Arquitectura: Clusters

Arquitectura de sistema de alta disponibilidad

Clustering en Windows 2003

Monitorización de sistemas y servicios

CLUSTERS HA LINUX Clusters de Alta Disponibilidad

DISCOS RAID. Se considera que todos los discos físicos tienen la misma capacidad, y de no ser así, en el que sea mayor se desperdicia la diferencia.

Alta disponibilidad de los servicios en la SGTIC del MEH

Global File System (GFS)...

ESQUEMAS DE SISTEMAS VOIP CON ALTA DISPONIBILIDAD Y ALTO RENDIMIENTO

UNIVERSIDAD TECNOLOGICA ECOTEC DIEGO BARRAGAN MATERIA: Sistemas Operativos 1 ENSAYO: Servidores BLADE

Introducción a las redes de computadores

CÓMO CONFIGURAR DHCP EN SUSE LINUX

Mi primer servidor. Fernando Fernández Consultor Preventa HP ISS

Redes de Altas Prestaciones

En todas ellas, la tecnologia que habilita en vmotion.

Curso de seguridad informática en el entorno docente. Sesión 4. PONENTE: Jaime López Soto.

Q-flow 3.1: Enterprise Edition

Redes de Almacenamiento


Módulos: Módulo 1. El núcleo de Linux - 5 Horas

Capítulo 5. Cliente-Servidor.

LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN

Soluciones innovadoras para optimizar su infraestructura TI. Virtualización con el sistema operativo i, PowerVM y Power Systems de IBM

Qué es un sistema de almacenamiento RAID?

Q-flow 3.0: Enterprise Edition

Política de Continuidad del Negocio de BME Clearing

13º Unidad Didáctica. RAID (Redundant Array of Independent Disks) Eduard Lara

Pruebas y Resultados PRUEBAS Y RESULTADOS AGNI GERMÁN ANDRACA GUTIERREZ

Dispositivos de Red Hub Switch

Modelo de Clustering. Microsoft SQL Server

Infraestructura Tecnológica. Sesión 1: Infraestructura de servidores

HA Clusters. Usualmente utilizan una red privada donde constantemente se monitorea el estatus de cada nodo, a esto se lo conoce como heartbeat.

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:

RESUMEN. Apartado , Lima 13, Perú Teléfonos (+51 1) Fax (+51 1)

No se requiere que los discos sean del mismo tamaño ya que el objetivo es solamente adjuntar discos.

Implementación de plataforma de virtualización con HA basada en Proxmox

PAUTAS PARA CONSTRUIR UN PLAN DE CONTINGENCIA PARA AZDIGITAL

Preguntas y respuestas No 2 Publicación Con respecto al requerimiento 2.1.d de la solución requerida (Página 16):

Servicios de impresión y de archivos (Windows 2008)

Monitorización y gestión de dispositivos, servicios y aplicaciones

Familia de Windows Server 2003

Expansión en línea de la Capacidad RAID & Migración del nivel RAID

Guía de uso del Cloud Datacenter de acens

[TECNOLOGÍA RAID] Documentos de formación de SM Data:

COMO CONFIGURAR UNA MAQUINA VIRTUAL EN VIRTUALBOX PARA ELASTIX

Los servicios más comunes son como por ejemplo; el correo electrónico, la conexión remota, la transferencia de ficheros, noticias, etc.

Tema 3. Tecnologías y arquitecturas tolerantes a errores. Alta disponibilidad. Gestión de la redundancia, clustering.

Nuevas tendencias: Virtualización de computadores / servidores

SISTEMAS DE INFORMACIÓN II TEORÍA

SIEWEB. La intranet corporativa de SIE

RAID. Redundant Array of Independent Disks. Rafael Jurado Moreno Fuente: Wikipedia

1. Instala sistemas operativos en red describiendo sus características e interpretando la documentación técnica.

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS


1. Instala servicios de configuración dinámica, describiendo sus características y aplicaciones.

Tema 1. Conceptos fundamentales de los Sistemas Operativos

Descripción. Este Software cumple los siguientes hitos:

comercio electrónico Antonio Sanz Comercio Electrónico

Windows Server 2012: Infraestructura de Escritorio Virtual

Una propuesta de valor para la gran empresa: Atlassian Data Center

Infraestructura Tecnológica. Sesión 5: Arquitectura cliente-servidor

CAPÍTULO 3: Resultados

Tecnología IP para videovigilancia... Los últimos avances han hecho posible conectar cámaras directamente a una red de ordenadores basada en el

Laboratorio Nacional de Cómputo de Alto Desempeño: Fortalecimiento de la Infraestructura 2015

Computación de Alta Performance Curso 2009 TOLERANCIA A FALLOS COMPUTACIÓN DE ALTA PERFORMANCE 2009 TOLERANCIA A FALLOS

WINDOWS : SERVIDOR DHCP

Normativa de Hosting Virtual de la Universidad de Sevilla

Brindamos asesorías que involucran tecnología y personal calificado, estos hacen de DOCTUM su mejor aliado.

SCT Software para la calibración de transductores de fuerza. Versión 3.5. Microtest S.A.

LAS TIC. Cintyha Lizbeth Gómez Salazar. Lic. Cruz Jorge Fernández Aramburo. 0 1 / 0 8 /

En caso de que el cliente nunca haya obtenido una concesión de licencia de un servidor DHCP:

General Parallel File System

CONFIGURACIÓN TERMINAL SERVER EN WINDOWS 2003

Servidores corporativos Linux

MODERNIZANDO PCN Y RECUPERACION DE DESASTRES UTILIZANDO VIRTUALIZACION Y LA NUBE

PREGUNTAS FRECUENTES PROCESO MIGRACIÓN CLIENTES WEB FIDUCIARIA SUCURSAL TELEFÓNICA BANCA PERSONAS Y SUCURSAL TELEFÓNICA

[VPN] [Políticas de Uso]

Plataformas operativas de tecnologías de información. Afinación del rendimiento

Qué es el enrutamiento estático?

TABLA DE CONTENIDO: 1 DIMENSIONAMIENTO DE SERVIDORES GALEÓN 2

10 razones para cambiarse a un conmutador IP

Es un grupo de servidores lo cuales cooperan entre ellos para proveer un servicio, incluso al momento de la falla de un componente Cuando una nodo

Ventajas del almacenamiento de datos de nube

AULAS VIRTUALES EDUCATIVAS

Escritorio remoto y VPN. Cómo conectarse desde Windows 7

Manual de Usuario Consulte en Equipo ADSL Huawei MT 882

Int. a las ciencias computacionales

QUÉ ES UN SERVIDOR Y CUÁLES SON LOS PRINCIPALES TIPOS DE SERVIDORES? (PROXY, DNS, WEB, FTP, SMTP, ETC.) (DV00408A)

Redes de Altas Prestaciones

Almacenamiento virtual de sitios web HOSTS VIRTUALES

Sistemas de Información. Junio de 2015

Sección 1: Introducción al Modo Windows XP para Windows 7

DECLARACIÓN DE PRIVACIDAD DE FONOWEB

Windows Server Windows Server 2003

Transcripción:

Centro de Teleinformática y Producción Industrial - Regional Cauca Pág. 1 de 11 Nombre del Introducción al Cluster Historial Fecha Razón de cambio (s) Autor(es) 26 / 10 /2011 Documento Inicial, Primer Borrador para poner a Consideración del Semillero Ing. Henry Bastidas Contenido Documento Éste Este documento relata una introducción a los conceptos básicos de la alta disponibilidad de sistemas informáticos así como diferentes soluciones de clusters HA basadas en proyectos open source para Linux. El presente documento contiene una breve introducción a los clusters informáticos.

Centro de Teleinformática y Producción Industrial - Regional Cauca Pág. 2 de 11 Nombre del Índice Historial... 1 Contenido Documento... 1 1. Definición... 3 2. Tipos de Clusters... 3 3. Clusters de Alta Disponibilidad (HA)... 5 3.1. Configuraciones de Alta Disponibilidad... 6 3.1.1 Configuración Activo/Activo... 6 3.1.2 Configuración Activo/Pasivo... 7 3.1.3 Funcionamiento de un cluster de alta disponibilidad... 7 4. Bibliografia... 11

Centro de Teleinformática y Producción Industrial - Regional Cauca Pág. 3 de 11 Nombre del 1. Definición Un clúster es un grupo de ordenadores, interconectados mediante una red, que trabajan conjuntamente y que se comportan como si fuesen un único sistema. Los clúster se emplean para aumentar el rendimiento y la disponibilidad a niveles que un único sistema no puede alcanzar, o para ser una alternativa económica y equiparable a costosos sistemas de alta potencia y disponibilidad. 2. Tipos de Clusters Clusters de Alta disponibilidad (HA, high availability) Los clusters de alta disponibilidad tienen como propósito principal brindar la máxima disponibilidad de los servicios que ofrecen. Esto se consigue mediante software que monitoriza constantemente el cluster, detecta fallos y permite recuperarse frente a los mismos. Clusters de Alto Rendimiento (HP, high performance) Estos clusters se utilizan para ejecutar programas paralelizables que requieren de gran capacidad computacional de forma intensiva. Son de especial interés para la comunidad científica o industrias que tengan que resolver complejos problemas o simulaciones. Utilizando clustering, podemos crear hoy en día supercomputadores con una fracción del coste de un sistema de altas prestaciones tradicional.

Centro de Teleinformática y Producción Industrial - Regional Cauca Pág. 4 de 11 Nombre del Clusters de Balanceo de Carga (LB, Load Balancing) Este tipo de cluster permite distribuir las peticiones de servicio entrantes hacia un conjunto de equipos que las procesa. Se utiliza principalmente para servicios de red sin estado, como un servidor web o un servidor de correo electrónico, con altas cargas de trabajo y de tráfico de red. Las características más destacadas de este tipo de cluster son su robustez y su alto grado de escalabilidad. Componentes de un Cluster Un sistema cluster está formado habitualmente por diversos componentes hardware y software: Nodos Cada una de las máquinas que componen el cluster, pueden ser desde simples ordenadores personales a servidores dedicados, conectados por una red. Por regla general los nodos deben tener características similares: arquitectura, componentes, sistema operativo. Sistemas Operativos Se utilizan sistemas operativos de tipos servidor con características de multiproceso y multiusuario, así como capacidad para abstracción de dispositivos y trabajo con interfaces IP virtuales. Middleware de Cluster Es el software que actúa entre el sistema operativo y los servicios o aplicaciones finales. Es la parte fundamental del cluster donde se encuentra la lógica del mismo.

Centro de Teleinformática y Producción Industrial - Regional Cauca Pág. 5 de 11 Nombre del Conexiones de red Los nodos del cluster pueden conectarse mediante una simple red Fast Ethernet o utilizar tecnologías de red avanzadas como Gigabit Ethernet, Infiniband, Myrinet, SCI, etc. Protocolos de comunicación Definen la intercomunicación entre los nodos del cluster. Sistema de almacenamiento El almacenamiento puede ir desde sistemas comunes de almacenamiento interno del servidor a redes de almacenamiento compartido NAS o SAN. Servicios y aplicaciones Son aquellos servicios y aplicaciones a ejecutar sobre el cluster. 3. Clusters de Alta Disponibilidad (HA) Para conseguir redundancia y protección contra fallos de un sistema, la primera de las medidas que se suelen tomar es replicar sus componentes hardware más crítico. Por ejemplo en el caso de un servidor se emplean configuraciones de discos en RAID, fuentes de alimentación redundantes, varias interfaces de red en bonding, etc. Y el mismo concepto de redundancia se aplica también para el resto de componentes como la electrónica de red o el sistema eléctrico. Estas medidas indudablemente aumentan el nivel de disponibilidad de un sistema, pero para conseguir un nivel aun más alto, se suelen utilizar configuraciones avanzadas de hardware y software como son los clusters de Alta Disponibilidad. Un Cluster de Alta Disponibilidad es un conjunto de dos o más servidores, que se caracteriza por compartir el sistema de almacenamiento, y por que están constantemente monitorizándose entre sí. Si se produce un fallo del hardware o de los servicios de alguno de las maquinas que forman el cluster, el software de alta disponibilidad es capaz de rearrancar automáticamente los servicios que han fallado en cualquiera de los otros equipos del cluster. Y cuando el servidor que ha fallado se recupera, los servicios se migran de nuevo a la máquina original. Esta capacidad de los clusters de restablecer en pocos segundos un servicio, manteniendo la integridad de los datos, permite que en muchos casos los usuarios no tengan por que notar que se ha producido un problema. Cuando una avería de este tipo, en un sistema sin cluster, podría dejarles sin servicio durante horas. La utilización de clusters no solo es beneficiosa para caídas de servicio no programadas, si no que también es útil en paradas de sistema programadas como puede ser un mantenimiento hardware o una actualización software. En general las razones para implementar un cluster de alta disponibilidad son:

Centro de Teleinformática y Producción Industrial - Regional Cauca Pág. 6 de 11 Nombre del Aumentar la disponibilidad Mejorar el rendimiento Escalabilidad Tolerancia a fallos Recuperación ante fallos en tiempo aceptable Reducir costes Consolidar servidores Consolidar el almacenamiento 3.1. Configuraciones de Alta Disponibilidad Las configuraciones más comunes en entornos de clusters de alta disponibilidad son la configuración activo/activo y la configuración activo/pasivo. 3.1.1 Configuración Activo/Activo En una configuración activo/activo, todos los servidores del cluster pueden ejecutar los mismos recursos simultáneamente. Es decir, los servidores poseen los mismos recursos y pueden acceder a estos independientemente de los otros servidores del cluster. Si un nodo del sistema falla y deja de estar disponible, sus recursos siguen estando accesibles a través de los otros servidores del cluster. La ventaja principal de esta configuración es que los servidores en el cluster son más eficientes ya que pueden trabajar todos a la vez. Sin embargo, cuando uno de los servidores deja de estar accesible, su carga de trabajo pasa a los nodos restantes, lo que produce una degradación del nivel global de servicio ofrecido a los usuarios. En la siguiente figura se muestra como ambos servidores están activos, proporcionando un mismo servicio a los diferentes usuarios. Los clientes acceden al servicio o recursos de forma transparente y no tienen conocimiento de la existencia de varios servidores formando un cluster.

Centro de Teleinformática y Producción Industrial - Regional Cauca Pág. 7 de 11 Nombre del 3.1.2 Configuración Activo/Pasivo Un cluster de alta disponibilidad, en una configuración activo/pasivo, consiste en un servidor que posee los recursos del cluster y otros servidores que son capaces de acceder a esos recursos, pero no los activan hasta que el el propietario de los recursos ya no esté disponible. Las ventajas de la configuración activo/pasivo son que no hay degradación de servicio y que los servicios solo se reinician cuando el servidor activo deja de responder. Sin embargo, una desventaja de esta configuración es que los servidores pasivos no proporcionan ningún tipo de recurso mientras están en espera, haciendo que la solución sea menos eficiente que el cluster de tipo activo/activo. Otra desventaja es que los sistemas tardan un tiempo en migrar los recursos (failover) al nodo en espera. 3.1.3 Funcionamiento de un cluster de alta disponibilidad En un cluster de alta disponibilidad, el software de cluster realiza dos funciones fundamentales. Por un lado intercomunica entre sí todos los nodos, monitorizando continuamente su estado y detectando fallos. Y por otro lado administra los servicios ofrecidos por el cluster, teniendo la capacidad de migrar dichos servicios entre diferentes servidores físicos como respuesta a un fallo. A continuación se describen los elementos y conceptos básicos en el funcionamiento del cluster. Recurso y Grupos de Recursos Tradicionalmente se entiende como servicio a un conjunto de procesos que se ejecutan en un momento dado sobre un servidor y sistema operativo. Este último provee a los procesos de los recursos necesarios para realizar su tarea: sistema de ficheros, interfaces de red, tiempo de cpu, memoria, etc. En un cluster de alta disponibilidad, el software de cluster, abstrae e independiza a los servicios de un host concreto. Posibilitando que estos se desplacen entre diferentes servidores de forma trasparente para la aplicación o los usuarios. El software de cluster permite definir grupos de recursos, que son todos aquellos recursos necesarios por

Centro de Teleinformática y Producción Industrial - Regional Cauca Pág. 8 de 11 Nombre del el servicio. Estos recursos serán los scripts de arranque del servicio, un sistema de ficheros, una dirección IP, etc. Intercomunicación El software de cluster gestiona servicios y recursos en los nodos. Pero además, tiene que mantener continuamente entre estos una visión global de la configuración y estado del cluster. De esta forma, ante el fallo de un nodo, el resto conoce que servicios se deben restablecer. Ya que la comunicación entre los nodos del cluster es crucial para el funcionamiento de este, es habitual utilizar un canal específico como una red IP independiente o una conexión serie, que no se pueda ver afectada por problemas de seguridad o rendimiento. Heartbeat El software de cluster conoce en todo momento la disponibilidad de los equipos físicos, gracias a la técnica de heartbeat. El funcionamiento es sencillo, cada nodo informa periódicamente de su existencia enviando al resto una señal de vida. Escenario Split-Brain En un escenario split-brain, más de un servidor o aplicación pertenecientes a un mismo cluster intentan acceder a los mismos recursos, lo que puede causar daños a dichos recursos. Este escenario ocurre cuando cada servidor en el cluster cree que los otros servidores han fallado e intenta activar y utilizar dichos recursos.

Centro de Teleinformática y Producción Industrial - Regional Cauca Pág. 9 de 11 Nombre del Monitorización de Recursos (Resource Monitoring) Ciertas soluciones de clustering HA permiten no solo monitorizar si un host físico está disponible, también pueden realizar seguimientos a nivel de recursos o servicios y detectar el fallo de estos. El administrador puede configurar la periodicidad de estos monitores así como las acciones a llevar a cabo en caso de fallo. Reiniciar Recursos Cuando un recurso falla, la primera medida que toman las soluciones de cluster es intentar reiniciar dicho recurso en el mismo nodo. Lo que supone detener una aplicación o liberar un recurso y posteriormente volverlo a activar. Algunas implementaciones no permiten reiniciar un único recurso, y lo que realizan es un reinicio completo de todo un grupo de recursos (servicio). Esto puede llegar a demorar bastante para servicios como las bases de datos. Migración de Recursos (Failover) Cuando un nodo ya no está disponible, o cuando un recurso fallido no se puede reiniciar satisfactoriamente en un nodo, el software de cluster reacciona migrando el recurso o grupo de recursos a otro nodo disponible en el cluster. De este modo el tiempo de inactividad por el posible fallo es mínimo, y el cluster seguirá proporcionando el correspondiente servicio.

Centro de Teleinformática y Producción Industrial - Regional Cauca Nombre del Pág. 10 de 11 Dependencia entre recursos Habitualmente para que el cluster proporcione un servicio, son necesarios no solo un recurso si no varios (ip virtual, sistema de ficheros, proceso), lo que se conoce como grupo de recursos. Cuando se arranca o detiene un servicio, sus recursos tienen que activarse en el orden apropiado ya que unos dependen de otros. El software de cluster tiene que permitir definir estas dependencias entre recursos así como entre grupos. Preferencia de Nodos (Resource Stickiness) En configuraciones de cluster con múltiples nodos, es común distribuir los servicios a proporcionar entre los diferentes servidores. Además puede que los servidores tengan características hardware diferentes (cpu, memoria ram) y nos interese que, para un estado ideal del cluster, determinados servicios se ejecuten siempre en un determinado servidor. Este comportamiento se define mediante la preferencia de nodo en la definición de cada recurso. Comunicación con otros sistemas El cluster tiene que monitorizar no solo que un servidor y sus servicios están activos, también debe de comprobar que, de cara a los usuarios, dicho servidor no queda desconectado de la red por el fallo de un latiguillo, switch, etc. Por lo tanto el software de cluster debe comprobar que los nodos son alcanzables. Un método simple para conseguirlo, es verificar que cada nodo tiene accesible el router o puerta de enlace de la red de usuarios. Fencing En los clusters HA existe una situación donde un nodo deja de funcionar correctamente pero todavía sigue levantado, accediendo a ciertos recursos y respondiendo peticiones. Para evitar que el nodo corrompa recursos o responda con peticiones, los clusters lo solucionan utilizando una técnica llamada Fencing. La función principal del Fencing es hacerle saber a dicho nodo que esta funcionando en mal estado, retirarle sus recursos asignados para que los atiendan otros nodos, y dejarlo en un estado inactivo. Quorum Para evitar que se produzca un escenario de Split-Brain, algunas implementaciones de cluster HA introducen un canal de comunicación adicional que se emplea para determinar exactamente que nodos están disponibles en el cluster y cuales no. Tradicionalmente se implementa utilizando los llamados quorum devices, que habitualmente son un volumen de almacenamiento compartido exclusivo (disk heart beating). También existen implementaciones que utilizan una conexiones de red adicional o una conexión serie. Esta última tiene limitaciones de distancia y actualmente ha quedado en desuso.

Centro de Teleinformática y Producción Industrial - Regional Cauca Nombre del Pág. 11 de 11 4. Bibliografia Blueprints for High Availability Evan Marcus, Hal Stern Wiley 2003 Clusters for High Availability Peter S. Weygant Prentice Hall 2001 Red Hat Cluster Suite Overview Red Hat Inc. 2008 The SUSE Linux Enterprise Server Heartbeat Guide Novell 2008 Linux-HA Project Documentation www.linux-ha.org