Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Red Hat Cluster Suite

No description
by

Sergio Castillo Dominguez

on 4 April 2013

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Red Hat Cluster Suite

El demonio pulse se ejecuta tanto en el servidor LVS activo como en el pasivo. En el enrutador LVS de respaldo, pulse envía un latido a la interfaz pública del enrutador LVS activo para asegurarse de que éste esté funcionando apropiadamente. En el enrutador LVS activo, pulse inicia el demonio lvs y responde a los latidos que provienen del enrutador LVS de respaldo.

Una vez iniciado, el demonio lvs llama a la utilidad ipvsadmin para configurar y mantener la tabla de rutas IPVS (IP Virtual Server) en el kernel e inicia un proceso nanny para cada servidor virtual configurado en cada servidor real. Cada proceso nanny revisa el estado de cada servidor configurado en un servidor real e informa al demonio lvs si el servicio en el servidor real no está funcionando. Si el servicio no está funcionando, el demonio lvs ordena a ipvsadm que remueva el servidor real de la tabla de rutas IPVS.

Si el enrutador LVS de respaldo no recibe una respuesta desde el enrutador LVS activo, el primero inicia un proceso de recuperación contra fallos llamando a send_arp para que asigne nuevamente todas las direcciones IP virtuales a las direcciones de hardware NIC (direcciones MAC) del enrutador LVS de respaldo, envía un comando para activar el enrutador LVS activo a través de las interfaces de red pública y privada para apagar el demonio lvs en el enrutador LVS activo e inicia el demonio lvs en el enrutador LVS de respaldo para que acepte solicitudes para los servidores virtuales configurados. Infraestructura del cluster — proporciona funciones fundamentales para que los nodos trabajen juntos como un cluster: administración del archivo de configuración, administración de membresías, administración de cierres de exclusión y aislamiento.

Administración de servicios de alta disponibilidad — Proporciona la transferencia de servicios de un cluster a otro en caso de que un nodo falle.

Herramienta de administración de cluster — Herramientas de configuración y administración para configurar y administrar un cluster de Red Hat. Las herramientas se utilizan con los componentes de infraestructura del cluster, los componentes de alta disponibilidad, de administración de servicios y de almacenamiento.

Servidor Virtual de Linux (LVS) — Software de encaminamiento que proporciona balance de carga de IP. LVS se ejecuta en un par de servidores pertinentes que distribuyen las peticiones de los clientes a los servidores reales que están tras los servidores LVS.

Se pueden añadir otros componentes a Red Hat Cluster Suite. Estos componentes son parte de un paquete adicional (y no parte de Red Hat Cluster Suite):

Red Hat GFS (Sistema de archivos global) — Proporciona un sistema de archivos de cluster para utilizar con Red Hat Cluster Suite. GFS permite que los nodos compartan el almacenaje a nivel de bloque como si éste fuera conectado localmente en cada nodo.

Administrador de volúmenes lógicos de cluster (CLVM) — Proporciona administración de volúmenes de almacenamiento en cluster. Red Hat Cluster Suite (RHCS) es un conjunto integrado de componentes de software que puede ser implementado en una amplia variedad de configuraciones para cubrir las necesidad de rendimiento, alta disponibilidad, balance de carga, escalabilidad, compartición de archivos y economía de recursos. Peso del servidor Se puede asignar un valor a cada nodo en el grupo de servidores reales. El valor es un entero usado por los algoritmos de programación que lo reconocen (tal como la programación con conexiones ponderadas mínimas) y asiste al enrutador LVS en el balance de carga con hardware que tiene diferentes opciones.

Los pesos funcionan como valores relativos entre si. Por ejemplo, si un servidor real tiene un valor de 1 y otro servidor tiene un valor de 5, el servidor con peso 5 recibe 5 conexiones por cada conexión que recibe el otro servidor. El valor de peso predeterminado es 1. Programación de fuente hash
Distribuye todas las solicitudes al grupo de servidores reales, buscando el IP de origen en una tabla hash estática. Este algoritmo se utiliza en enrutadores LVS con varios cortafuegos. Programación de destino hash
Distribuye las solicitudes al grupo de servidores reales buscando el IP de destino en una tabla hash estática. Este algoritmo está diseñado para ser usado en un cluster de servidor de cache de proxy. Conexiones ponderadas mínimas (predeterminada)
Distribuye más solicitudes a los servidores con menos conexiones activas en relación con sus capacidades. La capacidad es indicada por el usuario y es ajustada por la información de carga dinámica. La adición del parámetro de capacidad hace que este algoritmo sea ideal cuando la infraestructura tiene servidores reales con capacidades de hardware variado Conexión mínima
Distribuye más solicitudes a los servidores reales con menos conexiones activas. Ya que rastrea las conexiones vivas a los servidores reales a través de la tabla IPVS, la conexión mínima es un tipo de algoritmo de programación dinámica, siendo una mejor opción si hay un alto grado de variaciones en la carga de solicitudes. Es adecuado para grupos de servidores reales en donde cada nodo miembro tiene la misma capacidad. Si un grupo de servidores tiene capacidades diferentes, la programación de conexión mínima ponderada es una mejor opción. Los cluster de alta disponibilidad proporcionan continua disponibilidad de los servicios a través de la eliminación de la falla por un único elemento y a través del proceso de recuperación en contra de fallos al trasladar el servicio desde el nodo de cluster erróneo a otro nodo completamente funcional. Generalmente, los servicios en los cluster de alta disponibilidad leen y escriben datos a través de la lectura y escritura a un sistema de archivos montado. Así, un cluster de alta disponibilidad debe mantener la integridad de los datos cuando un nodo recibe el control del servicio desde otro nodo. Los nodos erróneos no son vistos por los clientes fuera del cluster. Los cluster de alta disponibilidad son conocidos también como cluster con recuperación contra fallas. Red Hat Cluster Suite proporciona cluster de alta disponibilidad a través del componente de administración de servicios de alta disponibilidad. Red Hat Cluster Suite Las marcas de cortafuegos ofrecen una manera fácil y eficiente de agrupar puertos utilizados por un protocolo o grupo de protocolos relacionados. Por ejemplo, si la adición de equilibrador de carga se implementa en un sitio de comercio electrónico, las marcas de cortafuegos pueden ser usadas para agrupar conexiones HTTP en el puerto 80 y conexiones seguras en el puerto 443. Al asignar la misma marca de cortafuego al servidor virtual para cada protocolo, la información de estado para la transacción puede ser preservada porque el enrutador LVS envía todas las solicitudes al mismo servidor real después de que la conexión ha sido abierta.

Gracias a su eficiencia y facilidad de uso, los administradores de la adición de equilibrador de carga deben utilizar marcas de cortafuegos en vez de persistencia cuando sea posible agrupar conexiones.

Sin embargo, se debe añadir persistencia a los servidores virtuales junto con las marcas de cortafuegos para asegurar que los clientes se reconecten al mismo servidor por un periodo de tiempo adecuado. Marcas de cortafuegos Programación mínima basada en localidad con programación de réplica
Distribuye más solicitudes a los servidores con menos conexiones activas de acuerdo al IP de destino. Este algoritmo es usado en servidores de cache de proxy. Se diferencia de la programación "Conexión mínima basada en localidad" al relacionar la dirección IP objetivo con un grupo de servidores reales. Las solicitudes son luego enviadas al servidor en el grupo con menos número de conexiones. Si la capacidad de todos los nodos para el IP de destino está sobre el límite, este método añade un nuevo servidor real del grupo general al grupo de servidores para el IP de destino. El nodo con mayor carga es desplazado fuera del grupo para evitar un exceso de replicación. Programación de conexión mínima basada en localidad
Distribuye más solicitudes a los servidores con menos conexiones activas en relación con sus IP de destino. Este algoritmo se utiliza en cluster de servidores de cache proxy. Envía el paquete para una dirección IP al servidor con esa dirección a menos que ese servidor esté por encima de su capacidad y tenga un servidor a media carga, en dicho caso se asigna la dirección IP al servidor real con menos carga. Los cluster de almacenamiento proporcionan una imagen de sistema de archivos consistente a lo largo de los servidores en el cluster, permitiendo que los servidores lean y escriban de forma simultánea a un sistema de archivos compartido. Un cluster de almacenamiento simplifica la administración de almacenamiento al limitar la instalación de aplicaciones a un sistema de archivos. Asimismo, con un sistema de archivos a lo largo del cluster, un cluster de almacenamiento elimina la necesidad de copias de más de los datos de la aplicación y simplifica la creación de copias de seguridad y recuperación contra desastres. Red Hat Cluster Suite proporciona almacenamiento de cluster a través de Red Hat GFS. Red Hat Cluster Suite nos proporciona cuatro clases de cluster a implementar El enrutador LVS activo tiene dos roles:
Balancear la carga entre los servidores reales.
Revisar la integridad de los servicios en cada servidor real.
El enrutador LVS de respaldo sondea el estado del enrutador LVS activo y toma el control de sus tareas en caso de que éste falle. El servidor virtual de Linux (LVS) es un grupo de componentes de software integrado para balancear la carga de IP a lo largo de un conjunto de servidores reales. LVS se ejecuta en un par de computadores configurados de la misma forma: uno que funciona como un enrutador LVS activo y otro que funciona como un enrutador LVS de respaldo. Persistencia Cuando se activa, la persistencia actúa como un contador. Cuando un cliente se conecta a un servicio, la adición de equilibrador de carga recuerda la última conexión para el periodo de tiempo especificado.
Si la misma dirección IP de cliente se conecta dentro del periodo de tiempo establecido, la solicitud se envía al mismo servidor que estaba procesando la solicitud anteriormente dejando de lado el mecanismo de balance de carga. Cuando ocurre una conexión fuera del tiempo límite, ésta se maneja de acuerdo a las reglas de programación en uso. En algunas circunstancias, puede desearse que un cliente se conecte con el mismo servidor real varias veces en vez de tener que pasar un algoritmo de balance de adición de equilibrador de carga envíe esa solicitud al mejor servidor disponible. Ejemplos de tales situaciones incluyen los formularios web de varias páginas, las cookies, las conexiones SSL y FTP. En dichos casos, el cliente puede no funcionar adecuadamente a menos que la transacción sea procesada por el mismo servidor que retiene el contexto inicial. LVS proporciona dos funcionalidades diferentes para manejar estos casos: persistencia y marcas de cortafuego. Marcas de cortafuego y persistencia Para solucionar este problema, asegúrese de que las solicitudes entrantes sean siempre enviadas al enrutador LVS y no a alguno de los servidores reales. Esto se puede realizar con las herramientas de filtro de paquetes arptables_jf o iptables por las siguientes razones:
arptables_jf previene que ARP asocie las VIP con los servidores reales.
El método iptables soluciona completamente el problema de ARP al no configurar las VIP en los servidores reales. El problema con las solicitudes ARP en una configuración de adición de equilibrador de carga con enrutamiento directo es que una solicitud de un cliente a una dirección IP debe estar asociada con una dirección MAC para que la solicitud sea manejada, la dirección IP virtual del sistema LVS debe estar asociada con una dirección MAC. Sin embargo, como el enrutador LVS y los servidores reales todos tienen la misma VIP, el ARP será enviado a todas las máquinas asociadas con la VIP. Esto puede causar algunos problemas, tal como que el VIP sea asociado directamente con uno de los servidores reales y procesa las solicitudes directamente, dejando de lado el enrutador LVS completamente y anulando así el propósito de LVS. Aunque hay varias ventajas al utilizar enrutamiento directo en adición de equilibrador de carga, hay también algunas limitaciones. El problema más común con LVS a través de enrutamiento directo es con el Protocolo de resolución de direcciones (ARP). Enrutado directo y limitación ARP En la configuración adición de equilibrador de carga de enrutamiento directo, el enrutador LVS recibe las solicitudes entrantes de servidores a través del IP virtual (VIP) y utiliza un algoritmo de programación para encaminar la solicitud a los servidores reales. El servidor real procesa la solicitud y envía la respuesta directamente al cliente, ignorando el enrutador LVS. Este método de enrutado permite escalabilidad ya que los servidores reales pueden ser añadidos sin el problema de que el enrutador LVS tenga que encaminar paquetes salientes desde el servidor real al cliente, lo cual puede llegar a convertirse en un cuello de botella cuando hay una carga de red pesada. La configuración de la adición de equilibrador de carga que utiliza enrutamiento directo proporciona mejor rendimiento que otras topologías de red LVS. El enrutamiento directo permite que los servidores reales procesen y encaminen los paquetes directamente al usuario que los solicitó en vez de encaminar los paquetes salientes al enrutador LVS. El enrutado directo reduce la posibilidad de problemas de rendimiento de red al relegar el trabajo de LVS al procesamiento de paquetes entrantes únicamente. Enrutado Directo Algoritmos de balance de carga Programación ponderada Round-Robin
Distribuye cada solicitud secuencialmente al rededor del grupo de servidores reales, pero otorga más trabajos a los servidores que tienen mayor capacidad. La capacidad es indicada por un factor de peso asignado por el usuario, el cual se ajusta hacia arriba y hacia abajo gracias a la información de carga dinámica.
La programación Round-Robin ponderada es la preferida si hay diferencias significativas en la capacidad de los servidores reales en el grupo. Sin embargo, si la carga de solicitudes varía de forma dramática, los servidores con una capacidad mayor responderán a más solicitudes de las que deberían. Programación Round-Robin
Distribuye cada solicitud secuencialmente a lo largo del grupo de servidores reales. Con este algoritmo, todos los servidores reales son tratados como iguales sin importar la capacidad o carga. Este modelo de programación se asemeja a DNS de Round-Robin, pero es más detallado porque se basa en las conexiones de red y no en el host. La programación de roundrobin de la adición de equilibrador de carga tampoco sufre desbalances causados por el proceso de cache de las solicitudes de DNS. Los cluster de alto rendimiento utilizan los nodos para ejecutar cálculos simultáneos. Un cluster de alto rendimiento permite que las aplicaciones trabajen de forma paralela, mejorando así el rendimiento de éstas. Los cluster de alto rendimiento son conocidos como cluster computacionales o computación de red. Los cluster de balance de carga responden a peticiones de servicios de red desde diferentes nodos para balancear las peticiones a los largo de los nodos del cluster. El balance de carga proporciona escalabilidad económica porque se puede configurar el número de nodos de acuerdo con los requerimientos de balance de carga. Si un nodo en un cluster de balance de carga falla, el software de balance de carga detecta la falla y asigna las peticiones a otros nodos en el cluster. Los nodos erróneos en un cluster de balance de carga no son visibles desde los clientes fuera del cluster. Red Hat Cluster Suite proporciona balance de carga a través de LVS (Servidor Virtual de Linux). Balance de carga Programador Round-Robin.
Programación ponderada Round-Robin.
Conexión mínima.
Conexiones ponderadas mínimas (predeterminada).
Programación de conexión mínima basada en localidad.
Programación mínima basada en localidad con programación de réplica.
Programación de destino hash.
Programación de fuente hash. Solo un enrutador LVS está activo a la vez. El rol del enrutador LVS activo es redireccionar la solicitud del servicio desde la dirección IP virtual al servidor real. La redirección está basada en uno de ocho algoritmos de balance de carga: Topología de dos capas Al utilizar NAT , los servidores reales pueden ser cualquier clase de máquina con cualquier sistema operativo. La desventaja principal es que el enrutador LVS puede convertirse en un cuello de botella en implementaciones grandes porque las solicitudes salientes como entrantes son procesadas. Si se utiliza esta topología, el enrutador activo LVS recibe la solicitud y la envía al servidor apropiado. El servidor real luego procesa la solicitud y retorna el paquete al enrutador LVS el cual utiliza NAT para reemplazar la dirección del servidor real en el paquete por la dirección VIP pública del enrutador LVS. En el caso de fallo, la interfaz virtual que encara el internet y la privada que encara la interfaz virtual son tomadas simultáneamente por el enrutador LVS de respaldo. Todos los servidores reales en la red privada utilizan el IP flotante para el enrutador NAT como su enrutador predeterminado para comunicarse con el enrutador LVS activo, de esta forma la habilidades para responder a solicitudes desde Internet no se ve impedida. Puede utilizar enrutado NAT (Network Address Translation) o enrutado directo con LVS. La siguiente sección describe abreviadamente ambos enrutados: Enrutado de NAT Métodos de Enrutamiento Almacenamiento (Storage) Alta disponibilidad (High availability) Balance de carga (Load balancing) Alto rendimiento (High performance) Algoritmos de balance de carga Algoritmos de balance de carga Red Hat Cluster Suite Balance de carga (Load balancing) Componentes de LVS (Balance de Carga Componentes de Red Hat Cluster Suite Diagrama de LVS Visión General Una de las ventajas del uso del balance de carga es la habilidad de ejecutar balance de carga de IP flexible en un grupo de servidores reales. Esta flexibilidad se debe a la variedad de algoritmos de programación que un administrador puede escoger cuando configura la adición de equilibrador de carga Algoritmos de programación
Peso del servidor y programación
Métodos de enrutamiento
Enrutado de NAT
Enrutado directo
Persistencia
Marcas de cortafuegos
Full transcript