Cluster

Published on December 2016 | Categories: Documents | Downloads: 40 | Comments: 0 | Views: 328
of 4
Download PDF   Embed   Report

Comments

Content


Qué es exactamente un sistema Cluster?
Este tipo de sistemas se basa en la unión de varios servidores que trabajan como si de uno
sólo se tratase. Los sistemas cluster han evolucionado mucho desde su primera aparición,
ahora se pueden crear distintos tipos de clusters, en función de lo que se necesite:
1. Unión de Hardware
2. Clusters de Software
3. Alto rendimiento de bases de datos
Estas son solo algunas de las opciones que tenemos disponibles. En resumen, cluster es un
grupo de múltiples ordenadores unidos mediante una red de alta velocidad, de tal forma que
el conjunto es visto como un único ordenador, más potente que los comunes de escritorio.
De un sistema de este tipo se espera que presente combinaciones de los siguientes servicios:
1. Alto rendimiento
2. Alta disponibilidad
3. Equilibrio de carga
4. Escalabilidad
Para que un sistema cluster funcione no es necesario que todas las máquinas dispongan del
mismo Hardware y sistema operativo (cluster heterogéneo). Este tipo de sistemas debe de
disponer de un interfaz de manejo de clusters, la cual se encargue de interactuar con el
usuario y los procesos, repartiendo la carga entre las diferentes máquinas del grupo.











¿Qué componentes necesita un cluster para funcionar?
Por norma general un cluster hace uso de diferentes componentes para funcionar, entre
estos están:
 Nodos (Ordenadores o servidores)
 Sistema operativo
 Conexión de Red (ampliado más abajo)
 Middleware (capa entre el usuario y el sistema operativo)
 Protocolos de comunicación y servicio
 Aplicaciones
Nodos:
Los nodos pueden ser ordenadores de escritorio o servidores, de hecho se puede establecer
un cluster con cualquier tipo de máquina.
Sistema operativo:
Este debe de tener un entorno multiusuario, cuanto más fácil sea el manejo del sistema
menores problemas tendremos. Comúnmente Solingest instala sus cluster con sistemas
Microsoft Cluster Services (MSCS), pero es totalmente factible la instalación de un Cluster
con un sistema Linux o Unix como podrían ser Rocks (Linux) o Solaris (Unix).
Han surgido ocasiones en las que se ha requerido el montaje de un sistema cluster en Mac
OS X, sobretodo en Granjas de render (para procesado 3D).
Conexiones de Red:
Las conexiones utilizadas en este tipo de sistema pueden ser muy variadas, se pueden
utilizar desde simples conexiones Ethernet con placas de red comunes o sistemas de alta
velocidad como Fast Ethernet, Gigabit Ethernet, Myrinet, Infiniband, SCI, etc.
Middleware:
El middleware es el software que actúa entre el sistema operativo y las aplicaciones y que
brinda al usuario la experiencia de estar utilizando una única super máquina. Este software
provee una única interfaz de acceso al sistema, denominada SSI (Single System Image).
Optimiza el sistema y provee herramientas de mantenimiento para procesos pesados como
podrían ser migraciones, balanceo de carga, tolerancia de fallos, etc.
Este sistema también se encarga de la escalabilidad del cluster, detectando nuevas
máquinas y añadiéndolas al grupo.
Por lo tanto, si un cliente quisiera disponer de un cluster para su servidor Web, este podría
optar entre diferentes opciones. No habría ningún problema en instalar un cluster que
tuviese un sistema MySQL y PHP repartido entre diferentes máquinas.
¿Tiene alguna desventaja?
Ninguna, este tipo de sistemas son los más fiables, ya que para la parada total del proceso
deben de pararse todas las máquinas que componen el grupo. Es la mejor solución para
crecer según las necesidades reales, ya que puede añadir tantas máquinas necesite.
Empresas muy importantes como Google y Microsoft utilizan este tipo de sistemas para
poner en marcha sus portales. Realmente con este tipo de soluciones las posibilidades son
inmensas.




Un clúster es simplemente una colección de componentes que se unen y trabajan como un
solo componente para proveer alta disponibilidad. Cuando hablamos de clusters de bases de
datos, nos referimos a una arquitectura en la que tenemos varios equipos con parte de los
datos del usuario trabajando al unísono como un solo sistema. La arquitectura de un cluster
de base de datos viene definida por la manera en que se almacenan los datos en cada nodo.
Arquitectura tipo 1: En este tipo de arquitectura cada nodo del clúster posee parte de la
información dentro base de datos y solamente procesa la información que él tiene. Este
tipo de arquitectura es en realidad la más común y la ofertada por la mayoría de los
fabricantes de motores de base de datos.Al multiplicarse los volúmenes de datos, su
administración es un cargo muy costoso en algunas ocasiones, lo que está obligando a las
empresas a tomar decisiones sobre qué hacer con la información, cómo almacenarla y en
manos de quién dejarla.
Arquitectura tipo 2: En este tipo de arquitectura toda la información de la base de datos es
compartida, mientras que el procesamiento de esta información es distribuida entre los
nodos.
Al tener la arquitectura distribuida que ofrece un clúster, puedo asegurar alta disponibilidad
de mi información, además de poder alcanzar un mayor número de transacciones
simultáneas (IOPS).
Arquitectura tipo 1: Cada nodo se encarga de procesar cada porción de la información que
el posee almacenado en su disco incrementando el número de IOPS que podemos alcanzar
en comparación a una base de datos no clusterizada. Además, dado que los datos están
distribuidos en varios nodos en caso de ocurrir un fallo en uno de los nodos la única
información que no estaría disponible es la que estaba gestionando este nodo hasta que
vuelva a ser levantado. Hay que tener en cuenta que esto es una gran ventaja en
comparación a un motor de base de datos que gestiona toda la información y no está
distribuido, ya que con la caída de este motor perdemos acceso completo a toda nuestra
información.
Arquitectura tipo 2: Cada nodo se encarga de procesar información por separado, pero
todos los nodos comparten acceso a toda la información. Dado que la información se
procesa por separado, obtenemos los mismos beneficios que la arquitectura anterior en
relación a IOPS, con la ventaja adicional que en caso de falla de un nodo no perderemos
acceso a esta información al estar los nodos compartidos.

Bases de datos: Para asegurar mejores resultados en el funcionamiento de las bases de
datos que son consultadas por diversas empresas para sus procesos de reportes o prestación
de servicios, es vital que se aplique una configuración de clusterización.
Aplicaciones: Entre las aplicaciones más importantes que requieren clusterizar sus
aplicaciones se puede mencionar: Consultas de registros de llamadas y de servicios de las
empresas de Telecomunicaciones, sistemas SCADA de empresas petroleras, sistemas de
transacción financiera para las entidades financieras, sistemas de atención médica para
hospitales y clínicas, y aplicaciones web de empresas de hosting, así como también
sistemas de atención al cliente
En la imagen adjunta se puede ver gráficamente el flujo de datos.
1. El tráfico llega a la empresa a través de un router conectado a internet
2. Pasa a la siguiente capa donde se realiza un balanceo de carga de conexiones
3. Accede al servidor que le proveerá el servicio solicitado
4. Se distribuye la carga en un motor de base de datos (mysql) que se encuentra distribuido
en 2 nodos conectados entre si a través de un switch.

Tipos de aplicación de clúster
Las aplicaciones que se ejecutan en un clúster de servidores pertenecen a una de las siguientes
cuatro categorías:
 Aplicación no compatible con clústeres

Este tipo de aplicaciones no interactúa con el clúster de servidores, pero puede presentar
errores. La detección de errores es limitada. El servicio de Cluster Server protege a estas
aplicaciones principalmente frente a errores de hardware.
 Aplicaciones compatibles con clúster

Este tipo de aplicaciones se caracteriza por una mejor detección de errores. El servicio de
Cluster Server puede proteger a estas aplicaciones no sólo frente a errores de hardware,
sino también de software.
 Aplicaciones de administración de clústeres

Este tipo de aplicaciones, entre las que se incluyen el Administrador de clústeres y
Cluster.exe, permite a los administradores administrar y configurar los clústeres. Para
obtener más información, vea Componentes del clúster de servidores.
 Tipos de recursos personalizados

Este tipo de recursos permite realizar tareas personalizadas de administración e
instrumentación de clústeres en aplicaciones, servicios y dispositivos.

Sponsor Documents

Or use your account on DocShare.tips

Hide

Forgot your password?

Or register your new account on DocShare.tips

Hide

Lost your password? Please enter your email address. You will receive a link to create a new password.

Back to log-in

Close