CONCEPTOS
BÁSICOS DE CLUSTERING
|
El
concepto clustering se refiere a una técnica que
permite combinar múltiples sistemas para que trabajen en paralelo y se
comporten como un recurso informático unificado para: servir a un grupo de
tareas, proporcionar tolerancia a fallos y tener disponibilidad continua. Por
ejemplo, en el caso de usuarios de Internet.
el clustering proporciona
bases de datos, correo electrónico, ficheros u otros servicios de sistema sin
interrupciones. Si se presentara una falla dentro de una red de servidores de
un cluster, ésta se corregiría inmediatamente sin que los
usuarios lo notaran. Dentro de esta técnica existen una serie de conceptos
fundamentales. Como el paralelismo, que consiste en el
procesamiento de una serie de instrucciones de un programa, que son
ejecutadas por múltiples procesadores que trabajan de manera independiente.
El paralelismo puede manejarse en dos niveles: paralelismo del hardware y
el software. El primero depende básicamente de la
tecnología de cómputo disponible, mientras el segundo se refiere a la
habilidad del usuario para encontrar áreas bien definidas del problema por
resolver, de tal forma que éste pueda ser dividido en partes autónomas que
serán distribuidas entre los nodos del cluster, obteniendo un
sistema de alto rendimiento computacional.
Por otro lado está el concepto de multiprocesamiento, una
característica del sistema operativo que controla el hardware. El
software asegura la interacción entre los procesadores a nivel de
carga y descarga de datos, además de realizar el despacho de trabajos en
forma múltiple, independiente y simultánea.
Otro
concepto fundamental es la programación de hebras(programming
threads). Una hebra (thread) es una secuencia de
instrucciones ejecutables que pueden correr independientemente, compartiendo
recursos computacionales con otras hebras. En un programa hay la posibilidad
de ejecutar varias hebras simultáneamente. Cuando esto ocurre todas las
hebras activas pueden competir y compartir los recursos del sistema. Por lo
tanto, el usuario ha recurrido a la programación multi-hebras(multithread)
que trae como consecuencia la concurrencia entre procesos y tiene una gran
importancia en el cómputo paralelo.
|
|
CLASIFICACION
DE LOS CLUSTERS
¿cuáles son las ventajas que nos ofrecen estos
sistemas? La respuesta inmediata es: alto rendimiento, expansibilidad
y escalamiento, soporte a alta carga de trabajo y alta disponibilidad. A
partir de esas características se puede hacer unaclasificación de los
clusters.
1-Por disponibilidad,
en esta categoría los usuarios pueden contar con clusters dedicados y no-dedicados.
Los primeros están destinados a ejecutar un solo código, programa o
aplicación. Por lo tanto los procesadores estarán funcionando al 100% en las
tareas que se les asignaron. En los segundos, los procesadores serán
utilizados al mismo tiempo por diferentes procesos. Dependiendo de la demanda
de trabajo, se tendrá disponible cierto porcentaje del procesador.
2- Por aplicación,
aquí entran los clusters que ejecutan aplicaciones
utilizadas en el Cómputo Científico, donde lo más importante es
obtener un alto desempeño, optimizando el tiempo de procesamiento, es decir,
evitando en lo posible demasiado tiempo de CPU en procesos de respaldo y
lectura de datos. También en este grupo se encuentran los clusters de alta
disponibilidad, donde lo fundamental es que los nodos-esclavos siempre se
encuentren funcionando de manera óptima.
3- Por hardware esta
clasificación se hace de acuerdo a las características físicas de los
equipos. Entonces, podemos encontrar clusters de
computadoras personales (CoPs o PoPs, por sus siglas en inglés), clusters de
estaciones de trabajo (COWs, por sus siglas en inglés) y clusters con
multiprocesadores simétricos (CLUMPs, por sus siglas en inglés).
4-De
acuerdo al sistema operativo (SO) instalado en sus nodos: clusters-Beowulf si
el SO es Linux; clusters-NOW cuando funcionan a través de Solaris; clusters-NT si
están basados en Windows NT; clusters-AIX cuando
el SO es el utilizado por la compañía IBM; clusters-VMS si
emplean el SO de Digital, y por último los clusters HP-UX y
los Microsoft Wolfpack.
5-Finalmente por la configuración de los
nodos a nivel del hardware y del SO: si el cluster es
homogéneo significa que las arquitecturas son similares y todos los nodos
corren el mismo SO. En el caso de los clusters heterogéneos,
los nodos pueden tener arquitecturas diferentes y trabajar con SO distintos.
|
información obtenida de www.revista.unam.mx


Interesante la información aquí contenida compañera, Ya que pude comprender que se busca optimizar todo tipo de aspectos con estos clusters, es también impresionante el trabajo que puede llegar a ser llegar a la función principal de estos, la cual es que todos esos nodos trabajen como un sólo sistema.
ResponderEliminarme parece excelente la información ya que nos explica que el cluster se encarga de corregir los problemas que se puede dar en una red mediante nodos ,tambien nos explica que se ejecuta mediante un solo codigo ya sea mediante programa o aplicacion ,la verdad esta muy bien la informacion
ResponderEliminarLa información que abordaste sobre el cluster es de suma importancia ya que a nosotros como estudiantes está información no sirve para comprender la función del cluster así como también su clasificación me agradó el artículo así que te recomiendo que sigas publicando más artículos respecto al tema
ResponderEliminarPor ejemplo tu información de los clusters es muy relevante como eficaz y muy entendible ya que habla de sus clasificación o en su caso configuración. Nos explicas la relación que estas tienen su Comparación, funcionamiento y componentes que lo forman dentro de sus características ya que es de suma importancia mediante su disponibilidad como aplicación.
ResponderEliminar