Está en la página 1de 6

Facultad de Ciencias Econmicas y Administrativas Escuela de Economa y Negocios

Clusters

Alumno: Claudio Snchez Ctedra: Gestin Del Conocimiento Profesor: Jorge Israel

Clusters
El trmino cluster se aplica a los conjuntos o conglomerados de computadoras construidos mediante la utilizacin de componentes de hardware comunes y que se comportan como si fuesen una nica computadora. Hoy en da juegan un papel importante en la solucin de problemas de las ciencias, las ingenieras y del comercio moderno. La tecnologa de clusters ha evolucionado en apoyo de actividades que van desde aplicaciones de sper computo y software de misiones crticas, servidores Web y comercio electrnico, hasta bases de datos de alto rendimiento, entre otros usos. El cmputo con clusters surge como resultado de la convergencia de varias tendencias actuales que incluyen la disponibilidad de microprocesadores econmicos de alto rendimiento y redes de alta velocidad, el desarrollo de herramientas de software para cmputo distribuido de alto rendimiento, as como la creciente necesidad de potencia computacional para aplicaciones que la requieran. Simplemente, cluster es un grupo de mltiples ordenadores unidos mediante una red de alta velocidad, de tal forma que el conjunto es visto como un nico ordenador, ms potente que los comunes de escritorio. Los clusters son usualmente empleados para mejorar el rendimiento y/o la disponibilidad por encima de la que es provista por un solo computador tpicamente siendo ms econmico que computadores individuales de rapidez y disponibilidad comparables. De un cluster se espera que presente combinaciones de los siguientes servicios: 1. 2. 3. 4. Alto rendimiento Alta disponibilidad Equilibrio de carga Escalabilidad

La construccin de los ordenadores del cluster es ms fcil y econmica debido a su flexibilidad: pueden tener todos la misma configuracin de hardware y sistema operativo (cluster homogneo), diferente rendimiento pero con arquitecturas y sistemas operativos similares (cluster semi-homogneo), o tener diferente hardware y sistema operativo (cluster heterogneo), lo que hace ms fcil y econmica su construccin. Para que un cluster funcione como tal, no basta solo con conectar entre s los ordenadores, sino que es necesario proveer un sistema de manejo del cluster, el cual se encargue de interactuar con el usuario y los procesos que corren en l para optimizar el funcionamiento.

Clasificacin de los Clusters


El trmino cluster tiene diferentes connotaciones para diferentes grupos de personas. Los tipos de clusters, establecidos en base al uso que se d a los clusters y los servicios que ofrecen, determinan el significado del trmino para el grupo que lo utiliza. Los clusters pueden clasificarse con base en sus caractersticas. Se pueden tener clusters de alto rendimiento (HPC High Performance Clusters), clusters de alta disponibilidad (HA High Availability) o clusters de alta eficiencia (HT High Throughput). Alto rendimiento: Son clusters en los cuales se ejecutan tareas que requieren de gran capacidad computacional, grandes cantidades de memoria, o ambos a la vez. El llevar a cabo estas tareas puede comprometer los recursos del cluster por largos periodos de tiempo. Alta disponibilidad: Son clusters cuyo objetivo de diseo es el de proveer disponibilidad y confiabilidad. Estos clusters tratan de brindar la mxima disponibilidad de los servicios que ofrecen. La confiabilidad se provee mediante software que detecta fallos y permite recuperarse frente a los mismos, mientras que en hardware se evita tener un nico punto de fallos. Alta eficiencia: Son clusters cuyo objetivo de diseo es el ejecutar la mayor cantidad de tareas en el menor tiempo posible. Existe independencia de datos entre las tareas individuales. El retardo entre los nodos del cluster no es considerado un gran problema. Los clusters pueden tambin clasificar como Clusters de IT Comerciales (Alta disponibilidad, Alta eficiencia) y Clusters Cientficos (Alto rendimiento). A pesar de las discrepancias a nivel de requerimientos de las aplicaciones, muchas de las caractersticas de las arquitecturas de hardware y software, que estn por debajo de las aplicaciones en todos estos clusters, son las mismas. Ms an, un cluster de determinado tipo, puede tambin presentar caractersticas de los otros.

Componentes de un Cluster
En general, un cluster necesita de varios componentes de software y hardware para poder funcionar. A saber:

Nodos Sistemas Operativos Conexiones de Red Middleware Protocolos de Comunicacin y servicios Aplicaciones Ambientes de Programacin Paralela

Nodos Pueden ser simples ordenadores, sistemas multiprocesador o estaciones de trabajo (workstations). En informtica, de forma muy general, un nodo es un punto de interseccin o unin de varios elementos que confluyen en el mismo lugar. Ahora bien, dentro de la informtica la palabra nodo puede referirse a conceptos diferentes segn en mbito en el que nos movamos: En redes de computadoras cada una de las mquinas es un nodo, y si la red es Internet, cada servidor constituye tambin un nodo. En estructuras de datos dinmicas un nodo es un registro que contiene un dato de inters y al menos un puntero para referenciar (apuntar) a otro nodo. Si la estructura tiene slo un puntero, la nica estructura que se puede construir con l es una lista, si el nodo tiene ms de un puntero ya se pueden construir estructuras ms complejas como rboles o grafos.1 El cluster puede estar conformado por nodos dedicados o por nodos no dedicados. En un cluster con nodos dedicados, los nodos no disponen de teclado, mouse ni monitor y su uso est exclusivamente dedicado a realizar tareas relacionadas con el cluster. Mientras que, en un cluster con nodos no dedicados, los nodos disponen de teclado, mouse y monitor y su uso no est exclusivamente dedicado a realizar tareas relacionadas con el cluster, el cluster hace uso de los ciclos de reloj que el usuario del computador no esta utilizando para realizar sus tareas. Cabe aclarar que a la hora de disear un Cluster, los nodos deben tener caractersticas similares, es decir, deben guardar cierta similaridad de arquitectura y sistemas operativos, ya que si se conforma un Cluster con Nodos totalmente heterogneos (existe una diferencia grande entre capacidad de procesadores, memoria, HD) ser ineficiente debido a que el middleware delegara o asignara todos los procesos al Nodo de mayor capacidad de Cmputo y solo distribuir cuando este se encuentre saturado de procesos; por eso es recomendable construir un grupo de ordenadores los ms similares posible. Almacenamiento El almacenamiento puede consistir en una NAS, una SAN, o almacenamiento interno en el servidor. El protocolo ms comnmente utilizado es NFS (Network File System), sistema de ficheros compartido entre servidor y los nodos. Sin embargo existen sistemas de ficheros especficos para clusters como Lustre (CFS) y PVFS2. Sistema Operativo Debe ser multiproceso, multiusuario. Otras caractersticas deseables son la facilidad de uso y acceso y permitir adems mltiples procesos y usuarios. Un sistema operativo es un programa o conjunto de programas de computadora

destinado a permitir una gestin eficaz de sus recursos. Comienza a trabajar cuando se enciende el computador, y gestiona el hardware de la mquina desde los niveles ms bsicos, permitiendo tambin la interaccin con el usuario. Un sistema operativo se puede encontrar normalmente en la mayora de los aparatos electrnicos que utilicen microprocesadores para funcionar, ya que gracias a estos podemos entender la mquina y que sta cumpla con sus funciones (telfonos mviles, reproductores de DVD, auto radios... y computadoras) Conexiones de Red Los nodos de un cluster pueden conectarse mediante una simple red Ethernet con placas comunes (adaptadores de red o NICs), o utilizarse tecnologas especiales de alta velocidad como Fast Ethernet, Gigabit Ethernet, Myrinet, Infiniband, SCI, etc. Middleware El middleware es un software que generalmente acta entre el sistema operativo y las aplicaciones con la finalidad de proveer a un cluster lo siguiente:

Una interfaz nica de acceso al sistema, denominada SSI (Single System Image), la cual genera la sensacin al usuario de que utiliza un nico ordenador muy potente; Herramientas para la optimizacin y mantenimiento del sistema: migracin de procesos, checkpoint-restart (congelar uno o varios procesos, mudarlos de servidor y continuar su funcionamiento en el nuevo host), balanceo de carga, tolerancia a fallos, etc.; Escalabilidad: debe poder detectar automticamente nuevos servidores conectados al cluster para proceder a su utilizacin

Ambientes de Programacin Paralela Los ambientes de programacin paralela permiten implementar algoritmos que hagan uso de recursos compartidos: CPU (Central Processing Unit), memoria, datos y servicios.

Clusters en Aplicaciones Empresariales

Suelen ser aplicaciones no especialmente intensivas computacionalmente, pero que demandan alta disponibilidad y respuesta inmediata, con lo que los servicios se estn ejecutando continuamente y no controlados por un sistema de colas Es usual que un sistema provea varios servicios. Una primera aproximacin para realizar una distribucin del trabajo es separar los servicios:

Un servidor web con la BD en un nodo, el contenedor EJB en otro y el servidor de pginas web en otro constituye un claro ejemplo de distribucin en el mbito empresarial. Otra aproximacin es instalar una aplicacin web en un clster squid como proxy-cach, apache/tomcat como servidor: web/de aplicaciones web, memcached como cach de consultas a la base de datos y mysql como base de datos. Estos: servicios pueden estar replicados en varios nodos del clster.

Ejemplos: flickr, wikipedia y google.

Clusters en Aplicaciones Cientficas


Se suelen caracterizar por ser aplicaciones computacionalmente intensivas Sus necesidades de recursos son muy importantes en almacenamiento y especialmente memoria. Requieren nodos y sistemas dedicados, en entornos HPC y HTC. Suelen estar controlados los recursos por planificadores tipo Maui y gestores de recursos tipo PBS. Son en muchas ocasiones cdigos legacy, difciles de mantener, ya que los dominios de aplicacin suelen ser difcilmente paralelizables.

Ejemplos: Simulaciones (earth simulator), genmica computacional, prediccin meteorolgica (MM5), simulacin de corrientes y vertidos en el mar, aplicaciones en qumica computacional.

También podría gustarte