fbpx
Wikipedia

Clúster de computadoras

El término clúster[1]​ (del inglés cluster, que significa 'grupo' o 'racimo') se aplica a los sistemas distribuidos de granjas de computadoras unidos entre sí normalmente por una red de alta velocidad y que se comportan como si fuesen un único servidor. A diferencia de la computacion en malla (computación grid), los clústeres de computadoras tienen a cada nodo realizando la misma tarea, controlada y planificada por software.

Un clúster en la Universidad McGill.
Un ejemplo de clúster en la NASA (EE. UU.)

La tecnología de clústeres ha evolucionado en apoyo de actividades que van desde aplicaciones de supercómputo y software para aplicaciones críticas, servidores web y comercio electrónico, hasta bases de datos de alto rendimiento, y otros usos.

El cómputo con clústeres surge como resultado de la convergencia de varias tendencias actuales que incluyen la disponibilidad de microprocesadores económicos de alto rendimiento y redes de alta velocidad, el desarrollo de herramientas de software para cómputo distribuido de alto rendimiento, así como la creciente necesidad de potencia computacional para aplicaciones que la requieran.

Simplemente, un clúster es un grupo de ordenadores unidos mediante una red de alta velocidad, de tal forma que el conjunto es visto como un único ordenador.

Historia

El origen del término y del uso de este tipo de tecnología es desconocido pero se puede considerar que comenzó a finales de los años cincuenta y principios de los sesenta.

La base formal de la ingeniería informática cree que la metodología de proveer un medio de hacer trabajos paralelos de cualquier tipo fue inventado posiblemente por Gene Amdahl de IBM, que en 1967 publicó lo que ha llegado a ser considerado como el libro blanco inicial de procesamiento paralelo: la ley de Amdahl que describe matemáticamente el aceleramiento que se puede esperar paralelizando cualquier otra serie de tareas realizadas en una arquitectura paralela.

Este artículo define la base para la ingeniería de la computación tanto multiprocesador como computación clúster, en donde la principal diferencia es si las comunicaciones entre procesadores se hace dentro de una red local o a través de una red de área extensa.

En consecuencia, la historia de los primeros grupos de computadoras está más o menos directamente ligado a la historia de los primeros pasos de las redes de comunicación, como una necesidad para enlazar los recursos de computación y crear un clúster de computadoras. Las redes de conmutación de paquetes fueron conceptualmente inventadas por la corporación RAND en 1962.

Utilizando el concepto de una red de conmutación de paquetes, el proyecto ARPANET logró crear en 1969 lo que fue posiblemente la primera red de computadoras en clúster en cuatro centros informáticos (cada uno de las cuales fue algo similar a un clúster en red local pero no a un clúster sobre red de área extensa como hoy en día se entiende).

El proyecto ARPANET creció y se convirtió en lo que es ahora Internet. Se puede considerar como «la madre de todos los clústeres» (como la unión de casi todos los recursos de cómputo, incluidos los clústeres, que pasarían a ser conectados).

También estableció el paradigma de uso de clústeres de computadoras en el mundo actual: el uso de las redes de conmutación de paquetes para realizar las comunicaciones entre procesadores localizados en los marcos de otro modo desconectados.

El desarrollo de la construcción de PC por los clientes y grupos de investigación procedió a la par con la de las redes y el sistema operativo Unix desde principios de la década de los años setenta, como TCP/IP y el proyecto de la Xerox PARC proyecto y formalizado para protocolos basados en la red de comunicaciones.

El núcleo del sistema operativo fue construido por un grupo de DEC PDP-11 minicomputadoras llamado C.mmp en C-MU en 1971.

Sin embargo, no fue hasta alrededor de 1983 que los protocolos y herramientas para el trabajo remoto que facilitan la distribución y el uso compartido de archivos fueran definidos (en gran medida dentro del contexto de BSD Unix, e implementados por Sun Microsystems) y, por tanto llegar a disponerse comercialmente, junto con un sistema de archivos compartidos.

El primer producto comercial de tipo clúster fue ARCnet, desarrollada en 1977 por Datapoint pero no obtuvo un éxito comercial y los clústeres no consiguieron tener éxito hasta que en 1984 DEC produjera VAXcluster para el sistema operativo VAX/VMS.

El ARCnet y VAXcluster no solo son productos que apoyan la computación paralela, si no que también comparten los sistemas de archivos y dispositivos periféricos.

La idea era proporcionar las ventajas del procesamiento paralelo, al tiempo que se mantiene la fiabilidad de los datos y el carácter singular. VAXcluster, VMScluster están todavía disponibles en los sistemas de HP OpenVMS corriendo en sistemas Itanium y Alpha.

Otros dos principios comerciales de clústeres notables fueron el Tándem Himalaya (alrededor 1994 de con productos de alta disponibilidad) y el IBM S/390 Parallel Sysplex (también alrededor de 1994, principalmente para el uso de la empresa).

La historia de los clústeres de computadoras estaría incompleta sin señalar el papel fundamental desempeñado por el desarrollo del software de PVM (parallel virtual machine: ‘máquina virtual paralela’).

Este software de código libre, basado en comunicaciones TCP/IP permitió la creación de un superordenador virtual ―un clúster HPC― realizado desde cualquiera de los sistemas conectados TCP/IP.

De forma libre los clústeres heterogéneos han constituido la cima de este modelo, logrando aumentar rápidamente en FLOPS y superando con creces la disponibilidad incluso de los supercomputadores más caros.

PVM y el empleo de PC y redes de bajo costo llevó, en 1993, a un proyecto de la NASA para construir supercomputadoras basados en clústeres.

En 1995, la invención de la Beowulf ―un estilo de clúster― una granja de computación diseñada según un producto básico de la red con el objetivo específico de «ser un superordenador» capaz de realizar firmemente cálculos paralelos HPC.

Esto estimuló el desarrollo independiente de la computación Grid como una entidad, a pesar de que el estilo Grid giraba en torno al del sistema operativo Unix y el Arpanet.

Características

Los clústeres son usualmente empleados para mejorar el rendimiento o la disponibilidad por encima de la que es provista por un solo computador típicamente siendo más económico que computadores individuales de rapidez y disponibilidad comparables.

De un clúster se espera que presente combinaciones de los siguientes servicios:

  1. Alto rendimiento
  2. Alta disponibilidad
  3. Equilibrado de carga
  4. Escalabilidad

La construcción de los ordenadores del clúster es más fácil y económica debido a su flexibilidad: pueden tener todos la misma configuración de hardware y sistema operativo (clúster homogéneo), diferente rendimiento pero con arquitecturas y sistemas operativos similares (clúster semihomogéneo), o tener diferente hardware y sistema operativo (clúster heterogéneo), lo que hace más fácil y económica su construcción.

Para que un clúster funcione como tal, no basta solo con conectar entre sí los ordenadores, sino que es necesario proveer un sistema de manejo del clúster, el cual se encargue de interactuar con el usuario y los procesos que corren en él para optimizar el funcionamiento.

Beneficios de la tecnología clúster

Las aplicaciones paralelas escalables requieren: buen rendimiento, baja latencia, comunicaciones que dispongan de gran ancho de banda, redes escalables y acceso rápido a archivos. Un clúster puede satisfacer estos requisitos usando los recursos que tiene asociados a él.

La tecnología clúster permite a las organizaciones incrementar su capacidad de procesamiento usando tecnología estándar, tanto en componentes de hardware como de software que pueden adquirirse a un costo relativamente bajo de los clúster

Clasificación de los clústeres

El término clúster tiene diferentes connotaciones para diferentes grupos de personas. Los tipos de clústeres, establecidos de acuerdo con el uso que se dé y los servicios que ofrecen, determinan el significado del término para el grupo que lo utiliza. Los clústeres pueden clasificarse según sus características:

  • HPCC (High Performance Computing Clusters: clústeres de alto rendimiento).
  • HA o HACC (High Availability Computing Clusters: clústeres de alta disponibilidad).
  • HT o HTCC (High Throughput Computing Clusters: clústeres de alta eficiencia).

Alto rendimiento: Son clústeres 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 clúster por largos periodos de tiempo.

Alta disponibilidad: Son clústeres cuyo objetivo de diseño es el de proveer disponibilidad y confiabilidad. Estos clústeres tratan de brindar la máxima 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 clústeres cuyo objetivo de diseño 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 clúster no es considerado un gran problema.

Los clústeres pueden también clasificar en:

  • clústeres de IT comerciales (de alta disponibilidad y alta eficiencia) y
  • clústeres científicos (de alto rendimiento).

A pesar de las discrepancias a nivel de requisitos de las aplicaciones, muchas de las características de las arquitecturas de hardware y software, que están por debajo de las aplicaciones en todos estos clústeres, son las mismas. Más aún, un clúster de determinado tipo, puede también presentar características de los otros.

Componentes de un clúster

En general, un clúster necesita de varios componentes de software y hardware para poder funcionar:

  • nodos
  • almacenamiento
  • sistemas operativos
  • conexiones de red
  • middleware
  • protocolos de comunicación y servicios
  • aplicaciones
  • ambientes de programación paralela

Nodos

Pueden ser simples ordenadores, sistemas multiprocesador o estaciones de trabajo. En informática, de forma muy general, un nodo es un punto de intersección o unión de varios elementos que confluyen en el mismo lugar. Ahora bien, dentro de la informática la palabra nodo puede referirse a conceptos diferentes según el ámbito en el que nos movamos:

  • En redes de computadoras cada una de las máquinas es un nodo, y si la red es Internet, cada servidor constituye también un nodo.
  • En estructuras de datos dinámicas un nodo es un registro que contiene un dato de interés y al menos un puntero para referenciar (apuntar) a otro nodo. Si la estructura tiene solo un puntero, la única estructura que se puede construir con él es una lista, si el nodo tiene más de un puntero ya se pueden construir estructuras más complejas como árboles o grafos.

El clúster puede estar conformado por nodos dedicados o por nodos no dedicados.

En un clúster con nodos dedicados, los nodos no disponen de teclado, ratón ni monitor y su uso está exclusivamente dedicado a realizar tareas relacionadas con el clúster. Mientras que, en un clúster con nodos no dedicados, los nodos disponen de teclado, ratón y monitor y su uso no está exclusivamente dedicado a realizar tareas relacionadas con el clúster, el clúster hace uso de los ciclos de reloj que el usuario del computador no está utilizando para realizar sus tareas.

Cabe aclarar que a la hora de diseñar un clúster, los nodos deben tener características similares, es decir, deben guardar cierta similitud de arquitectura y sistemas operativos, ya que si se conforma un clúster con nodos totalmente heterogéneos (existe una diferencia grande entre capacidad de procesadores, memoria, disco duro) será ineficiente debido a que el middleware delegará o asignará todos los procesos al nodo de mayor capacidad de cómputo y solo distribuirá cuando este se encuentre saturado de procesos; por eso es recomendable construir un grupo de ordenadores lo más similares posible.

Almacenamiento

El almacenamiento puede consistir en una NAS, una SAN, o almacenamiento interno en el servidor. El protocolo más comúnmente utilizado es NFS (Network File System), sistema de ficheros compartido entre servidor y los nodos. Sin embargo existen sistemas de ficheros específicos para clústeres como Lustre (CFS) y PVFS2.

Tecnologías en el soporte del almacenamiento en discos duros:

  • IDE o ATA: velocidades de 33, 66, 100, 133 y 166 MB/s
  • SATA: velocidades de 150, 300 y 600 MB/s
  • SCSI: velocidades de 160, 320, 640 MB/s. Proporciona altos rendimientos.
  • SAS: aúna SATA-II y SCSI. Velocidades de 300 y 600 MB/s
  • Las unidades de cinta (DLT) son utilizadas para copias de seguridad por su bajo costo.

NAS (Network Attached Storage) es un dispositivo específico dedicado al almacenamiento a través de red (normalmente TCP/IP) que hace uso de un sistema operativo optimizado para dar acceso a través de protocolos CIFS, NFS, FTP o TFTP.

Por su parte, DAS (Direct Attached Storage) consiste en conectar unidades externas de almacenamiento SCSI o a una SAN (storage area network: ‘red de área de almacenamiento’) a través de un canal de fibra. Estas conexiones son dedicadas.

Mientras NAS permite compartir el almacenamiento, utilizar la red, y tiene una gestión más sencilla, DAS proporciona mayor rendimiento y mayor fiabilidad al no compartir el recurso.

Sistema operativo

Un sistema operativo debe ser multiproceso y multiusuario. Otras características deseables son la facilidad de uso y acceso. Un sistema operativo es un programa o conjunto de programas de computadora destinado a permitir una gestión eficaz y segura de sus recursos. Comienza a trabajar cuando el gestor de arranque carga en memoria su núcleo y gestiona el hardware de la máquina desde los niveles más básicos, permitiendo también la interacción con el usuario. Se puede encontrar normalmente en la mayoría de los aparatos electrónicos que utilicen microprocesadores para funcionar, ya que gracias a estos podemos entender la máquina y que esta cumpla con sus funciones (teléfonos móviles, reproductores de DVD, radios, computadoras, etc.).

Ejemplos

Conexiones de red

Los nodos de un clúster pueden conectarse mediante una simple red Ethernet con placas comunes (adaptadores de red o NICs), o utilizarse tecnologías especiales de alta velocidad como Fast Ethernet, Gigabit Ethernet, Myrinet, InfiniBand, SCI, etc.

  • Ethernet
    • Son las redes más utilizadas en la actualidad, debido a su relativo bajo coste. No obstante, su tecnología limita el tamaño de paquete, realizan excesivas comprobaciones de error y sus protocolos no son eficientes, y sus velocidades de transmisión pueden limitar el rendimiento de los clústeres. Para aplicaciones con paralelismo de grano grueso puede suponer una solución acertada.
    • La opción más utilizada en la actualidad es Gigabit Ethernet (1 Gbit/s), siendo emergente la solución 10 Gigabit Ethernet (10 Gbit/s). La latencia de estas tecnologías está en torno a los 30 a 100 μs, dependiendo del protocolo de comunicación empleado.
    • En todo caso, es la red de administración por excelencia, así que aunque no sea la solución de red de altas prestaciones para las comunicaciones, es la red dedicada a las tareas administrativas.
  • Myrinet (Myrinet 2000 y Myri-10G).
    • Su latencia es de 99 a 10 μs, y su ancho de banda es de 2 a 10 Gbit/s (para Myrinet 2000 y Myri-10G, respectivamente).
    • Es la red de baja latencia más utilizada en la actualidad, tanto en clústeres como en MPP; está presente en más de la mitad de los sistemas del top500. Tiene dos bibliotecas de comunicación a bajo nivel (GM y MX). Sobre estas bibliotecas están implementadas MPICH-GM, MPICH-MX, Sockets-GM y Sockets MX, para aprovechar las excelentes características de Myrinet. Existen también emulaciones IP sobre TCP/IP, IPoGM e IPoMX.
  • InfiniBand
    • Es una red surgida de un estándar desarrollado específicamente para realizar la comunicación en clústeres. Una de sus mayores ventajas es que mediante la agregación de canales (x1, x4 y x12) permite obtener anchos de banda muy elevados. La conexión básica es de 2 Gbit/s efectivos y con ‘quad connection’ x12 alcanza los 96 Gbit/s. No obstante, los startups no son muy altos, se sitúan en torno a los 10 μs.
    • Define una conexión entre un nodo de computación y un nodo de I/O. La conexión va desde un Host Channel Adapter (HCA) hasta un Target Channel Adapter (TCA). Se está usando principalmente para acceder a arrays de discos SAS.
  • SCI (scalable coherent interface) IEEE standard 1596-1992
    • Su latencia teórica es de 1,43 μs y su ancho de banda de 5333 Mbit/s bidireccional. Al poder configurarse con topologías de anillo (1D), toro (2D) e hipercubo (3D) sin necesidad de switch, se tiene una red adecuada para clústeres de pequeño y mediano tamaño.
    • Al ser una red de extremadamente baja latencia, presenta ventajas frente a Myrinet en clústeres de pequeño tamaño al tener una topología punto a punto y no ser necesaria la adquisición de un conmutador. El software sobre SCI está menos desarrollado que sobre Myrinet, pero los rendimientos obtenidos son superiores, destacando SCI Sockets (que obtiene startups de 3 microsegundos) y ScaMPI, una biblioteca MPI de elevadas prestaciones.
    • Además, a través del mecanismo de preloading (LD_PRELOAD) se puede conseguir que todas las comunicaciones del sistema vayan a través de SCI-SOCKETS (transparencia para el usuario).

Middleware

El middleware es un software que generalmente actúa entre el sistema operativo y las aplicaciones con la finalidad de proveer a un clúster lo siguiente:

  • Una interfaz única de acceso al sistema, denominada SSI (Single System Image), la cual genera la sensación al usuario de que utiliza un único ordenador muy potente;
  • Herramientas para la optimización y mantenimiento del sistema: migración de procesos, checkpoint-restart (congelar uno o varios procesos, mudarlos de servidor y continuar su funcionamiento en el nuevo host), equilibrado de carga, tolerancia a fallos, etc.;
  • Escalabilidad: debe poder detectar automáticamente nuevos servidores conectados al clúster para proceder a su utilización.

Existen diversos tipos de middleware, como por ejemplo: MOSIX, OpenMOSIX, Cóndor, OpenSSI, etc.

El middleware recibe los trabajos entrantes al clúster y los redistribuye de manera que el proceso se ejecute más rápido y el sistema no sufra sobrecargas en un servidor. Esto se realiza mediante políticas definidas en el sistema (automáticamente o por un administrador) que le indican dónde y cómo debe distribuir los procesos, por un sistema de monitorización, el cual controla la carga de cada CPU y la cantidad de procesos en él.

El middleware también debe poder migrar procesos entre servidores con distintas finalidades:

  • balancear la carga: si un servidor está muy cargado de procesos y otro está ocioso, pueden transferirse procesos a este último para liberar de carga al primero y optimizar el funcionamiento;
  • Mantenimiento de servidores: si hay procesos corriendo en un servidor que necesita mantenimiento o una actualización, es posible migrar los procesos a otro servidor y proceder a desconectar del clúster al primero;
  • Priorización de trabajos: en caso de tener varios procesos corriendo en el clúster, pero uno de ellos de mayor importancia que los demás, puede migrarse este proceso a los servidores que posean más o mejores recursos para acelerar su procesamiento.

Ambientes de Programación Paralela

Los ambientes de programación paralela permiten implementar algoritmos que hagan uso de recursos compartidos: CPU (central processing unit: ‘unidad central de proceso’), memoria, datos y servicios.

Sistemas de clústeres implementados

Beowulf

En 1994, Donald Becker y Thomas Sterling construyeron la primera Beowulf. Fue construida con 16 computadores personales con procesadores Intel DX4 de 100 MHz, que estaban conectados a través de un switch Ethernet. El rendimiento teórico era de 3,2 GFlops.

 
Una granja Beowulf.

Berkeley NOW

El sistema NOW de Berkeley estuvo conformado por 105 estaciones de trabajo Sun Ultra 170, conectadas a través de una red Myrinet. Cada estación de trabajo contenía un microprocesador Ultra1 de 167 MHz, caché de nivel 2 de 512 KiB, 128 MiB de memoria, dos discos de 2,3 GB, tarjetas de red Ethernet y Myrinet. En abril de 1997, NOW logró un rendimiento de 10 GFlops.

Google

Durante el año 2003, el clúster Google llegó a estar conformado por más de 1,5 millones de computadores personales. Una consulta en Google lee en promedio cientos de megabytes y consume algunos billones de ciclos de CPU.[cita requerida]

Cluster PS2

En el año 2004, en la Universidad de Illinois (en Urbana-Champaign, Estados Unidos), se exploró el uso de consolas PlayStation 2 (PS2) en cómputo científico y visualización de alta resolución. Se construyó un clúster conformado por 70 PS2; utilizando Sony Linux Kit (basado en Linux Kondora y Linux Red Hat) y MPI.

System X

En la lista de los 500 superordenadores de noviembre de 2004, System X (Sistema Diez, en idioma inglés) fue considerado el séptimo sistema más rápido del mundo; sin embargo, en julio de 2005 ocupaba la posición catorce. System X fue construido en el Tecnológico de Virginia en el 2003; su instalación fue realizada por estudiantes de ese instituto. Está constituido por varios racimos de 2200 procesadores Apple G5 de 2,3 GHz. Utiliza dos redes: Infiniband 4x para las comunicaciones entre procesos y Gigabit Ethernet para la administración. System X posee 4 TiB de memoria RAM y 176 TB de disco duro, su rendimiento es de 12,25 TFlops. Se lo conoce también como Terascale.

Red Española de Supercomputación

En el año 2007 se creó la Red Española de Supercomputación, compuesta por 7 clústeres distribuidos en distintas instituciones españolas.

Todos los clústeres (a excepción de las segundas versiones de Magerit y MareNostrum, y el más reciente Caléndula) están formados por un número variable de nodos con procesadores PowerPC 970FX a 2,2 GHz interconectados con una red Myrinet. El rendimiento de las máquinas oscilan entre los casi 65 TeraFLOPS proporcionados por los más de 10000 núcleos de Marenostrum, los casi 16 TeraFLOPS de Magerit (primera versión) con 2400 procesadores o los casi 3 TeraFLOPS de los 5 nodos restantes.

La actualización de Magerit en 2011 mantiene la arquitectura clúster por su versatilidad y reemplazando los elementos de cómputo por nodos IBM PS702 con procesadores POWER7 a 3,0 GHz y logrando un rendimiento más de 72 TeraFLOPS lo que le convierte en el más poderoso de España. Esto demuestra la sencillez y flexibilidad de la arquitectura: actualizando algunos elementos se obtienen sistemas más potentes sin grandes complicaciones.

Thunder

Thunder fue construido por el Laboratorio Nacional Lawrence Livermore de la Universidad de California. Está conformado por 4096 procesadores Intel Itanium2 Tiger4 de 1,4 GHz. Utiliza una red basada en tecnología Quadrics. Su rendimiento es de 19,94 TFlops. Se ubicó en la segunda posición del «TOP 500» durante junio de 2004, luego en la quinta posición en noviembre de 2004 y en la lista de julio de 2005 se ubicó en la séptima posición.

ASCI Q

ASCI Q fue construido en el año 2002 por el Laboratorio Nacional Los Álamos, Estados Unidos. Está constituido por 8192 procesadores AlphaServer SC45 de 1,25 GHz. Su rendimiento es de 13,88 TFlops. Se ubicó en la segunda posición del «TOP 500» durante junio y noviembre de 2003, luego en la tercera posición en junio de 2004, en la sexta posición en noviembre de 2004 y en la duodécima posición en julio de 2005.

Gestión de recursos distribuidos: sistemas gestores de colas

  • Los sistemas de gestión de colas, gestionan una cola de ejecución, planifican la ejecución de las tareas y gestionan los recursos, para minimizar costes y maximizar rendimiento de las aplicaciones.
  • Funcionamiento:
– Los usuarios envían trabajos con qsub indicando requisitos de memoria, tiempo de procesador y espacio en disco.
– El gestor de recursos registra el trabajo.
– Tan pronto los recursos pedidos se hallen disponibles, el gestor de colas pone a ejecución el trabajo solicitado que según su planificación es el que tiene mayor prioridad. Se utiliza el planificador del gestor de colas en ausencia de planificadores más avanzados (como Maui / Moab cluster suite, los cuales pueden ser integrables en el sistema de colas).
– Se puede consultar el estado de los trabajos, en ejecución, en espera o terminados, a través de qstat
– Se puede eliminar un trabajo mediante qdel.
– El gestor de colas se configura con qconf.
  • Salida estándar de trabajos: job.o#job
  • Salida de error de trabajos: job.e#job
  • Sistemas gestores de colas populares: Sun Grid Engine (SGE), PBS, Open PBS y Torque.

Balanceadores de carga: Linux Virtual Server

  • Linux Virtual Server (LVS, IPVS en kernels 2.6.x) es un servicio de red altamente escalable y de alta disponibilidad que realiza:
– Equilibrado de carga mediante NAT (Network Address Translation), tunneling IP o enrutamiento directo (DR) por medio de un nodo maestro que da servicio a peticiones FTP y HTTP a los nodos de un clúster. Este servicio es provisto a nivel de kernel (ha de estar compilado el soporte para LVS/IPVS).
  • NAT hace que el clúster funcione con una única IP pública, siendo los paquetes reescritos por el nodo maestro para ocultar los nodos internos. Solo es aceptable para un número pequeño de nodos, por la sobrecarga que acarrea.
  • Tunneling IP es similar a NAT, pero el nodo maestro ya no reescribe los paquetes, siendo su tarea mucho más liviana.
  • El enrutamiento directo (DR) es un sistema aún más ligero, pero necesita que todos los servidores compartan el mismo segmento de red.

Clústeres en aplicaciones científicas

  • 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 códigos legacy, difíciles de mantener, ya que los dominios de aplicación suelen ser difícilmente paralelizables.

Ejemplos: Simulaciones (earth simulator), genómica computacional, predicción meteorológica (MM5), simulación de corrientes y vertidos en el mar, aplicaciones en química computacional

Clústeres en aplicaciones empresariales

  • Suelen ser aplicaciones no especialmente intensivas computacionalmente, pero que demandan alta disponibilidad y respuesta inmediata, con lo que los servicios se están ejecutando continuamente y no controlados por un sistema de colas
  • Es usual que un sistema provea varios servicios. Una primera aproximación para realizar una distribución del trabajo es separar los servicios:
  • Un servidor web con la BD en un nodo, el contenedor EJB en otro y el servidor de páginas web en otro constituye un
claro ejemplo de distribución en el ámbito empresarial.
  • Otra aproximación es instalar una aplicación web en un clúster 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 clúster.

Referencias

  1. «clúster, grafía adaptada». Consultado el 13 de julio de 2017. 
  2. ABC GNU/Linux, una distribución basada en Ubuntu y está dedicada a crear clústeres Beowulf de alto rendimiento con tan solo arrancar en uno de ellos el sistema en modo «live» o siendo instalado en su disco duro. Los nodos arrancan diskless a través de PXE.
  3. Rocks, una distribución especializada para clústeres, usando CentOS, que a su vez esta basada en Red Hat Enterprise

Véase también

Enlaces externos

  • Estrategia De Implementación De Un Clúster De Alta Disponibilidad De N Nodos Sobre Linux Usando Software Libre
  • Clúster de Alta Disponibilidad y Equilibrado de Carga para la Aplicación FarHos
  • Manejo de Cluster en WebSphere (IBM) Network Deployment
  • [http://cluster-linux.com.ar (enlace roto disponible en Internet Archive; véase el historial, la primera versión y la última). Experiencia de Cluster con Software Libre openMosix] (enlace roto disponible en Internet Archive; véase el historial, la primera versión y la última).
  • Conferencia realizada en Elche en el 2004. Explica clústeres LVS, Beowulf y openMosix.
  • Lista Top500 con los ordenadores más potentes del mundo.
  • Configurar un LVS
  • Network File System (NFS)
  • Lustre
  • ABC GNU/Linux Automated Beowulf Cluster Distribution
  • Rocks Cluster Distribution
  • Cóndor
  • Cluster uhu
  • Implementación de un cluster de computadoras
  •   Wikimedia Commons alberga una galería multimedia sobre Clúster de computadoras.
  •   Datos: Q206637
  •   Multimedia: Clusters (computing)

clúster, computadoras, término, clúster, inglés, cluster, significa, grupo, racimo, aplica, sistemas, distribuidos, granjas, computadoras, unidos, entre, normalmente, alta, velocidad, comportan, como, fuesen, único, servidor, diferencia, computacion, malla, co. El termino cluster 1 del ingles cluster que significa grupo o racimo se aplica a los sistemas distribuidos de granjas de computadoras unidos entre si normalmente por una red de alta velocidad y que se comportan como si fuesen un unico servidor A diferencia de la computacion en malla computacion grid los clusteres de computadoras tienen a cada nodo realizando la misma tarea controlada y planificada por software Un cluster en la Universidad McGill El texto que sigue es una traduccion defectuosa Si quieres colaborar con Wikipedia busca el articulo original y mejora esta traduccion Copia y pega el siguiente codigo en la pagina de discusion del autor de este articulo subst Aviso mal traducido Cluster de computadoras Un ejemplo de cluster en la NASA EE UU La tecnologia de clusteres ha evolucionado en apoyo de actividades que van desde aplicaciones de supercomputo y software para aplicaciones criticas servidores web y comercio electronico hasta bases de datos de alto rendimiento y otros usos El computo con clusteres surge como resultado de la convergencia de varias tendencias actuales que incluyen la disponibilidad de microprocesadores economicos de alto rendimiento y redes de alta velocidad el desarrollo de herramientas de software para computo distribuido de alto rendimiento asi como la creciente necesidad de potencia computacional para aplicaciones que la requieran Simplemente un cluster es un grupo de ordenadores unidos mediante una red de alta velocidad de tal forma que el conjunto es visto como un unico ordenador Indice 1 Historia 2 Caracteristicas 3 Beneficios de la tecnologia cluster 4 Clasificacion de los clusteres 5 Componentes de un cluster 5 1 Nodos 5 2 Almacenamiento 5 3 Sistema operativo 5 3 1 Ejemplos 5 4 Conexiones de red 5 5 Middleware 5 6 Ambientes de Programacion Paralela 6 Sistemas de clusteres implementados 6 1 Beowulf 6 2 Berkeley NOW 6 3 Google 6 4 Cluster PS2 6 5 System X 6 6 Red Espanola de Supercomputacion 6 7 Thunder 6 8 ASCI Q 7 Gestion de recursos distribuidos sistemas gestores de colas 8 Balanceadores de carga Linux Virtual Server 9 Clusteres en aplicaciones cientificas 10 Clusteres en aplicaciones empresariales 11 Referencias 12 Vease tambien 13 Enlaces externosHistoria EditarEl origen del termino y del uso de este tipo de tecnologia es desconocido pero se puede considerar que comenzo a finales de los anos cincuenta y principios de los sesenta La base formal de la ingenieria informatica cree que la metodologia de proveer un medio de hacer trabajos paralelos de cualquier tipo fue inventado posiblemente por Gene Amdahl de IBM que en 1967 publico lo que ha llegado a ser considerado como el libro blanco inicial de procesamiento paralelo la ley de Amdahl que describe matematicamente el aceleramiento que se puede esperar paralelizando cualquier otra serie de tareas realizadas en una arquitectura paralela Este articulo define la base para la ingenieria de la computacion tanto multiprocesador como computacion cluster en donde la principal diferencia es si las comunicaciones entre procesadores se hace dentro de una red local o a traves de una red de area extensa En consecuencia la historia de los primeros grupos de computadoras esta mas o menos directamente ligado a la historia de los primeros pasos de las redes de comunicacion como una necesidad para enlazar los recursos de computacion y crear un cluster de computadoras Las redes de conmutacion de paquetes fueron conceptualmente inventadas por la corporacion RAND en 1962 Utilizando el concepto de una red de conmutacion de paquetes el proyecto ARPANET logro crear en 1969 lo que fue posiblemente la primera red de computadoras en cluster en cuatro centros informaticos cada uno de las cuales fue algo similar a un cluster en red local pero no a un cluster sobre red de area extensa como hoy en dia se entiende El proyecto ARPANET crecio y se convirtio en lo que es ahora Internet Se puede considerar como la madre de todos los clusteres como la union de casi todos los recursos de computo incluidos los clusteres que pasarian a ser conectados Tambien establecio el paradigma de uso de clusteres de computadoras en el mundo actual el uso de las redes de conmutacion de paquetes para realizar las comunicaciones entre procesadores localizados en los marcos de otro modo desconectados El desarrollo de la construccion de PC por los clientes y grupos de investigacion procedio a la par con la de las redes y el sistema operativo Unix desde principios de la decada de los anos setenta como TCP IP y el proyecto de la Xerox PARC proyecto y formalizado para protocolos basados en la red de comunicaciones El nucleo del sistema operativo fue construido por un grupo de DEC PDP 11 minicomputadoras llamado C mmp en C MU en 1971 Sin embargo no fue hasta alrededor de 1983 que los protocolos y herramientas para el trabajo remoto que facilitan la distribucion y el uso compartido de archivos fueran definidos en gran medida dentro del contexto de BSD Unix e implementados por Sun Microsystems y por tanto llegar a disponerse comercialmente junto con un sistema de archivos compartidos El primer producto comercial de tipo cluster fue ARCnet desarrollada en 1977 por Datapoint pero no obtuvo un exito comercial y los clusteres no consiguieron tener exito hasta que en 1984 DEC produjera VAXcluster para el sistema operativo VAX VMS El ARCnet y VAXcluster no solo son productos que apoyan la computacion paralela si no que tambien comparten los sistemas de archivos y dispositivos perifericos La idea era proporcionar las ventajas del procesamiento paralelo al tiempo que se mantiene la fiabilidad de los datos y el caracter singular VAXcluster VMScluster estan todavia disponibles en los sistemas de HP OpenVMS corriendo en sistemas Itanium y Alpha Otros dos principios comerciales de clusteres notables fueron el Tandem Himalaya alrededor 1994 de con productos de alta disponibilidad y el IBM S 390 Parallel Sysplex tambien alrededor de 1994 principalmente para el uso de la empresa La historia de los clusteres de computadoras estaria incompleta sin senalar el papel fundamental desempenado por el desarrollo del software de PVM parallel virtual machine maquina virtual paralela Este software de codigo libre basado en comunicaciones TCP IP permitio la creacion de un superordenador virtual un cluster HPC realizado desde cualquiera de los sistemas conectados TCP IP De forma libre los clusteres heterogeneos han constituido la cima de este modelo logrando aumentar rapidamente en FLOPS y superando con creces la disponibilidad incluso de los supercomputadores mas caros PVM y el empleo de PC y redes de bajo costo llevo en 1993 a un proyecto de la NASA para construir supercomputadoras basados en clusteres En 1995 la invencion de la Beowulf un estilo de cluster una granja de computacion disenada segun un producto basico de la red con el objetivo especifico de ser un superordenador capaz de realizar firmemente calculos paralelos HPC Esto estimulo el desarrollo independiente de la computacion Grid como una entidad a pesar de que el estilo Grid giraba en torno al del sistema operativo Unix y el Arpanet Caracteristicas EditarLos clusteres son usualmente empleados para mejorar el rendimiento o la disponibilidad por encima de la que es provista por un solo computador tipicamente siendo mas economico que computadores individuales de rapidez y disponibilidad comparables De un cluster se espera que presente combinaciones de los siguientes servicios Alto rendimiento Alta disponibilidad Equilibrado de carga EscalabilidadLa construccion de los ordenadores del cluster es mas facil y economica debido a su flexibilidad pueden tener todos la misma configuracion de hardware y sistema operativo cluster homogeneo diferente rendimiento pero con arquitecturas y sistemas operativos similares cluster semihomogeneo o tener diferente hardware y sistema operativo cluster heterogeneo lo que hace mas facil y economica su construccion Para que un cluster funcione como tal no basta solo con conectar entre si 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 el para optimizar el funcionamiento Beneficios de la tecnologia cluster EditarLas aplicaciones paralelas escalables requieren buen rendimiento baja latencia comunicaciones que dispongan de gran ancho de banda redes escalables y acceso rapido a archivos Un cluster puede satisfacer estos requisitos usando los recursos que tiene asociados a el La tecnologia cluster permite a las organizaciones incrementar su capacidad de procesamiento usando tecnologia estandar tanto en componentes de hardware como de software que pueden adquirirse a un costo relativamente bajo de los clusterClasificacion de los clusteres EditarEl termino cluster tiene diferentes connotaciones para diferentes grupos de personas Los tipos de clusteres establecidos de acuerdo con el uso que se de y los servicios que ofrecen determinan el significado del termino para el grupo que lo utiliza Los clusteres pueden clasificarse segun sus caracteristicas HPCC High Performance Computing Clusters clusteres de alto rendimiento HA o HACC High Availability Computing Clusters clusteres de alta disponibilidad HT o HTCC High Throughput Computing Clusters clusteres de alta eficiencia Alto rendimiento Son clusteres 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 clusteres cuyo objetivo de diseno es el de proveer disponibilidad y confiabilidad Estos clusteres tratan de brindar la maxima 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 unico punto de fallos Alta eficiencia Son clusteres cuyo objetivo de diseno 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 clusteres pueden tambien clasificar en clusteres de IT comerciales de alta disponibilidad y alta eficiencia y clusteres cientificos de alto rendimiento A pesar de las discrepancias a nivel de requisitos de las aplicaciones muchas de las caracteristicas de las arquitecturas de hardware y software que estan por debajo de las aplicaciones en todos estos clusteres son las mismas Mas aun un cluster de determinado tipo puede tambien presentar caracteristicas de los otros Componentes de un cluster EditarEn general un cluster necesita de varios componentes de software y hardware para poder funcionar nodos almacenamiento sistemas operativos conexiones de red middleware protocolos de comunicacion y servicios aplicaciones ambientes de programacion paralelaNodos Editar Pueden ser simples ordenadores sistemas multiprocesador o estaciones de trabajo En informatica de forma muy general un nodo es un punto de interseccion o union de varios elementos que confluyen en el mismo lugar Ahora bien dentro de la informatica la palabra nodo puede referirse a conceptos diferentes segun el ambito en el que nos movamos En redes de computadoras cada una de las maquinas es un nodo y si la red es Internet cada servidor constituye tambien un nodo En estructuras de datos dinamicas un nodo es un registro que contiene un dato de interes y al menos un puntero para referenciar apuntar a otro nodo Si la estructura tiene solo un puntero la unica estructura que se puede construir con el es una lista si el nodo tiene mas de un puntero ya se pueden construir estructuras mas complejas como arboles o grafos 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 raton ni monitor y su uso esta exclusivamente dedicado a realizar tareas relacionadas con el cluster Mientras que en un cluster con nodos no dedicados los nodos disponen de teclado raton y monitor y su uso no esta 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 disenar un cluster los nodos deben tener caracteristicas similares es decir deben guardar cierta similitud de arquitectura y sistemas operativos ya que si se conforma un cluster con nodos totalmente heterogeneos existe una diferencia grande entre capacidad de procesadores memoria disco duro sera ineficiente debido a que el middleware delegara o asignara todos los procesos al nodo de mayor capacidad de computo y solo distribuira cuando este se encuentre saturado de procesos por eso es recomendable construir un grupo de ordenadores lo mas similares posible Almacenamiento Editar El almacenamiento puede consistir en una NAS una SAN o almacenamiento interno en el servidor El protocolo mas comunmente utilizado es NFS Network File System sistema de ficheros compartido entre servidor y los nodos Sin embargo existen sistemas de ficheros especificos para clusteres como Lustre CFS y PVFS2 Tecnologias en el soporte del almacenamiento en discos duros IDE o ATA velocidades de 33 66 100 133 y 166 MB s SATA velocidades de 150 300 y 600 MB s SCSI velocidades de 160 320 640 MB s Proporciona altos rendimientos SAS auna SATA II y SCSI Velocidades de 300 y 600 MB s Las unidades de cinta DLT son utilizadas para copias de seguridad por su bajo costo NAS Network Attached Storage es un dispositivo especifico dedicado al almacenamiento a traves de red normalmente TCP IP que hace uso de un sistema operativo optimizado para dar acceso a traves de protocolos CIFS NFS FTP o TFTP Por su parte DAS Direct Attached Storage consiste en conectar unidades externas de almacenamiento SCSI o a una SAN storage area network red de area de almacenamiento a traves de un canal de fibra Estas conexiones son dedicadas Mientras NAS permite compartir el almacenamiento utilizar la red y tiene una gestion mas sencilla DAS proporciona mayor rendimiento y mayor fiabilidad al no compartir el recurso Sistema operativo Editar Un sistema operativo debe ser multiproceso y multiusuario Otras caracteristicas deseables son la facilidad de uso y acceso Un sistema operativo es un programa o conjunto de programas de computadora destinado a permitir una gestion eficaz y segura de sus recursos Comienza a trabajar cuando el gestor de arranque carga en memoria su nucleo y gestiona el hardware de la maquina desde los niveles mas basicos permitiendo tambien la interaccion con el usuario Se puede encontrar normalmente en la mayoria de los aparatos electronicos que utilicen microprocesadores para funcionar ya que gracias a estos podemos entender la maquina y que esta cumpla con sus funciones telefonos moviles reproductores de DVD radios computadoras etc Ejemplos Editar GNU Linux ABC GNU Linux 2 OpenMosix Rocks 3 Kerrighed Condor Sun Grid Engine Unix Solaris HP UX AIX Windows NT 2000 Server 2003 Server 2008 Server 2012 server Mac OS X Xgrid Solaris FreeBSDConexiones de red Editar Los nodos de un cluster pueden conectarse mediante una simple red Ethernet con placas comunes adaptadores de red o NICs o utilizarse tecnologias especiales de alta velocidad como Fast Ethernet Gigabit Ethernet Myrinet InfiniBand SCI etc Ethernet Son las redes mas utilizadas en la actualidad debido a su relativo bajo coste No obstante su tecnologia limita el tamano de paquete realizan excesivas comprobaciones de error y sus protocolos no son eficientes y sus velocidades de transmision pueden limitar el rendimiento de los clusteres Para aplicaciones con paralelismo de grano grueso puede suponer una solucion acertada La opcion mas utilizada en la actualidad es Gigabit Ethernet 1 Gbit s siendo emergente la solucion 10 Gigabit Ethernet 10 Gbit s La latencia de estas tecnologias esta en torno a los 30 a 100 ms dependiendo del protocolo de comunicacion empleado En todo caso es la red de administracion por excelencia asi que aunque no sea la solucion de red de altas prestaciones para las comunicaciones es la red dedicada a las tareas administrativas Myrinet Myrinet 2000 y Myri 10G Su latencia es de 99 a 10 ms y su ancho de banda es de 2 a 10 Gbit s para Myrinet 2000 y Myri 10G respectivamente Es la red de baja latencia mas utilizada en la actualidad tanto en clusteres como en MPP esta presente en mas de la mitad de los sistemas del top500 Tiene dos bibliotecas de comunicacion a bajo nivel GM y MX Sobre estas bibliotecas estan implementadas MPICH GM MPICH MX Sockets GM y Sockets MX para aprovechar las excelentes caracteristicas de Myrinet Existen tambien emulaciones IP sobre TCP IP IPoGM e IPoMX InfiniBand Es una red surgida de un estandar desarrollado especificamente para realizar la comunicacion en clusteres Una de sus mayores ventajas es que mediante la agregacion de canales x1 x4 y x12 permite obtener anchos de banda muy elevados La conexion basica es de 2 Gbit s efectivos y con quad connection x12 alcanza los 96 Gbit s No obstante los startups no son muy altos se situan en torno a los 10 ms Define una conexion entre un nodo de computacion y un nodo de I O La conexion va desde un Host Channel Adapter HCA hasta un Target Channel Adapter TCA Se esta usando principalmente para acceder a arrays de discos SAS SCI scalable coherent interface IEEE standard 1596 1992 Su latencia teorica es de 1 43 ms y su ancho de banda de 5333 Mbit s bidireccional Al poder configurarse con topologias de anillo 1D toro 2D e hipercubo 3D sin necesidad de switch se tiene una red adecuada para clusteres de pequeno y mediano tamano Al ser una red de extremadamente baja latencia presenta ventajas frente a Myrinet en clusteres de pequeno tamano al tener una topologia punto a punto y no ser necesaria la adquisicion de un conmutador El software sobre SCI esta menos desarrollado que sobre Myrinet pero los rendimientos obtenidos son superiores destacando SCI Sockets que obtiene startups de 3 microsegundos y ScaMPI una biblioteca MPI de elevadas prestaciones Ademas a traves del mecanismo de preloading LD PRELOAD se puede conseguir que todas las comunicaciones del sistema vayan a traves de SCI SOCKETS transparencia para el usuario Middleware Editar El middleware es un software que generalmente actua entre el sistema operativo y las aplicaciones con la finalidad de proveer a un cluster lo siguiente Una interfaz unica de acceso al sistema denominada SSI Single System Image la cual genera la sensacion al usuario de que utiliza un unico ordenador muy potente Herramientas para la optimizacion y mantenimiento del sistema migracion de procesos checkpoint restart congelar uno o varios procesos mudarlos de servidor y continuar su funcionamiento en el nuevo host equilibrado de carga tolerancia a fallos etc Escalabilidad debe poder detectar automaticamente nuevos servidores conectados al cluster para proceder a su utilizacion Existen diversos tipos de middleware como por ejemplo MOSIX OpenMOSIX Condor OpenSSI etc El middleware recibe los trabajos entrantes al cluster y los redistribuye de manera que el proceso se ejecute mas rapido y el sistema no sufra sobrecargas en un servidor Esto se realiza mediante politicas definidas en el sistema automaticamente o por un administrador que le indican donde y como debe distribuir los procesos por un sistema de monitorizacion el cual controla la carga de cada CPU y la cantidad de procesos en el El middleware tambien debe poder migrar procesos entre servidores con distintas finalidades balancear la carga si un servidor esta muy cargado de procesos y otro esta ocioso pueden transferirse procesos a este ultimo para liberar de carga al primero y optimizar el funcionamiento Mantenimiento de servidores si hay procesos corriendo en un servidor que necesita mantenimiento o una actualizacion es posible migrar los procesos a otro servidor y proceder a desconectar del cluster al primero Priorizacion de trabajos en caso de tener varios procesos corriendo en el cluster pero uno de ellos de mayor importancia que los demas puede migrarse este proceso a los servidores que posean mas o mejores recursos para acelerar su procesamiento Ambientes de Programacion Paralela Editar Los ambientes de programacion paralela permiten implementar algoritmos que hagan uso de recursos compartidos CPU central processing unit unidad central de proceso memoria datos y servicios Sistemas de clusteres implementados EditarBeowulf Editar En 1994 Donald Becker y Thomas Sterling construyeron la primera Beowulf Fue construida con 16 computadores personales con procesadores Intel DX4 de 100 MHz que estaban conectados a traves de un switch Ethernet El rendimiento teorico era de 3 2 GFlops Una granja Beowulf Berkeley NOW Editar El sistema NOW de Berkeley estuvo conformado por 105 estaciones de trabajo Sun Ultra 170 conectadas a traves de una red Myrinet Cada estacion de trabajo contenia un microprocesador Ultra1 de 167 MHz cache de nivel 2 de 512 KiB 128 MiB de memoria dos discos de 2 3 GB tarjetas de red Ethernet y Myrinet En abril de 1997 NOW logro un rendimiento de 10 GFlops Google Editar Durante el ano 2003 el cluster Google llego a estar conformado por mas de 1 5 millones de computadores personales Una consulta en Google lee en promedio cientos de megabytes y consume algunos billones de ciclos de CPU cita requerida Cluster PS2 Editar En el ano 2004 en la Universidad de Illinois en Urbana Champaign Estados Unidos se exploro el uso de consolas PlayStation 2 PS2 en computo cientifico y visualizacion de alta resolucion Se construyo un cluster conformado por 70 PS2 utilizando Sony Linux Kit basado en Linux Kondora y Linux Red Hat y MPI System X Editar Articulo principal Supercomputadora Racimo Xserve del System X en el Instituto Politecnico y Universidad Estatal de Virginia En la lista de los 500 superordenadores de noviembre de 2004 System X Sistema Diez en idioma ingles fue considerado el septimo sistema mas rapido del mundo sin embargo en julio de 2005 ocupaba la posicion catorce System X fue construido en el Tecnologico de Virginia en el 2003 su instalacion fue realizada por estudiantes de ese instituto Esta constituido por varios racimos de 2200 procesadores Apple G5 de 2 3 GHz Utiliza dos redes Infiniband 4x para las comunicaciones entre procesos y Gigabit Ethernet para la administracion System X posee 4 TiB de memoria RAM y 176 TB de disco duro su rendimiento es de 12 25 TFlops Se lo conoce tambien como Terascale Red Espanola de Supercomputacion Editar Articulo principal Red Espanola de Supercomputacion En el ano 2007 se creo la Red Espanola de Supercomputacion compuesta por 7 clusteres distribuidos en distintas instituciones espanolas Todos los clusteres a excepcion de las segundas versiones de Magerit y MareNostrum y el mas reciente Calendula estan formados por un numero variable de nodos con procesadores PowerPC 970FX a 2 2 GHz interconectados con una red Myrinet El rendimiento de las maquinas oscilan entre los casi 65 TeraFLOPS proporcionados por los mas de 10000 nucleos de Marenostrum los casi 16 TeraFLOPS de Magerit primera version con 2400 procesadores o los casi 3 TeraFLOPS de los 5 nodos restantes La actualizacion de Magerit en 2011 mantiene la arquitectura cluster por su versatilidad y reemplazando los elementos de computo por nodos IBM PS702 con procesadores POWER7 a 3 0 GHz y logrando un rendimiento mas de 72 TeraFLOPS lo que le convierte en el mas poderoso de Espana Esto demuestra la sencillez y flexibilidad de la arquitectura actualizando algunos elementos se obtienen sistemas mas potentes sin grandes complicaciones Thunder Editar Thunder fue construido por el Laboratorio Nacional Lawrence Livermore de la Universidad de California Esta conformado por 4096 procesadores Intel Itanium2 Tiger4 de 1 4 GHz Utiliza una red basada en tecnologia Quadrics Su rendimiento es de 19 94 TFlops Se ubico en la segunda posicion del TOP 500 durante junio de 2004 luego en la quinta posicion en noviembre de 2004 y en la lista de julio de 2005 se ubico en la septima posicion ASCI Q Editar ASCI Q fue construido en el ano 2002 por el Laboratorio Nacional Los Alamos Estados Unidos Esta constituido por 8192 procesadores AlphaServer SC45 de 1 25 GHz Su rendimiento es de 13 88 TFlops Se ubico en la segunda posicion del TOP 500 durante junio y noviembre de 2003 luego en la tercera posicion en junio de 2004 en la sexta posicion en noviembre de 2004 y en la duodecima posicion en julio de 2005 Gestion de recursos distribuidos sistemas gestores de colas EditarLos sistemas de gestion de colas gestionan una cola de ejecucion planifican la ejecucion de las tareas y gestionan los recursos para minimizar costes y maximizar rendimiento de las aplicaciones Funcionamiento Los usuarios envian trabajos con qsub indicando requisitos de memoria tiempo de procesador y espacio en disco El gestor de recursos registra el trabajo Tan pronto los recursos pedidos se hallen disponibles el gestor de colas pone a ejecucion el trabajo solicitado que segun su planificacion es el que tiene mayor prioridad Se utiliza el planificador del gestor de colas en ausencia de planificadores mas avanzados como Maui Moab cluster suite los cuales pueden ser integrables en el sistema de colas Se puede consultar el estado de los trabajos en ejecucion en espera o terminados a traves de qstat Se puede eliminar un trabajo mediante qdel El gestor de colas se configura con qconf Salida estandar de trabajos job o job Salida de error de trabajos job e job Sistemas gestores de colas populares Sun Grid Engine SGE PBS Open PBS y Torque Balanceadores de carga Linux Virtual Server EditarLinux Virtual Server LVS IPVS en kernels 2 6 x es un servicio de red altamente escalable y de alta disponibilidad que realiza Equilibrado de carga mediante NAT Network Address Translation tunneling IP o enrutamiento directo DR por medio de un nodo maestro que da servicio a peticiones FTP y HTTP a los nodos de un cluster Este servicio es provisto a nivel de kernel ha de estar compilado el soporte para LVS IPVS NAT hace que el cluster funcione con una unica IP publica siendo los paquetes reescritos por el nodo maestro para ocultar los nodos internos Solo es aceptable para un numero pequeno de nodos por la sobrecarga que acarrea Tunneling IP es similar a NAT pero el nodo maestro ya no reescribe los paquetes siendo su tarea mucho mas liviana El enrutamiento directo DR es un sistema aun mas ligero pero necesita que todos los servidores compartan el mismo segmento de red Clusteres en aplicaciones cientificas EditarSe 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 codigos legacy dificiles de mantener ya que los dominios de aplicacion suelen ser dificilmente paralelizables Ejemplos Simulaciones earth simulator genomica computacional prediccion meteorologica MM5 simulacion de corrientes y vertidos en el mar aplicaciones en quimica computacionalClusteres en aplicaciones empresariales EditarSuelen ser aplicaciones no especialmente intensivas computacionalmente pero que demandan alta disponibilidad y respuesta inmediata con lo que los servicios se estan ejecutando continuamente y no controlados por un sistema de colas Es usual que un sistema provea varios servicios Una primera aproximacion para realizar una distribucion del trabajo es separar los servicios Un servidor web con la BD en un nodo el contenedor EJB en otro y el servidor de paginas web en otro constituye unclaro ejemplo de distribucion en el ambito empresarial Otra aproximacion es instalar una aplicacion web en un cluster squid como proxy cache apache tomcat como servidor web de aplicaciones web memcached como cache de consultas a la base de datos y mysql como base de datos Estos servicios pueden estar replicados en varios nodos del cluster dd Ejemplos Flickr Wikipedia y Google Referencias Editar cluster grafia adaptada Consultado el 13 de julio de 2017 ABC GNU Linux una distribucion basada en Ubuntu y esta dedicada a crear clusteres Beowulf de alto rendimiento con tan solo arrancar en uno de ellos el sistema en modo live o siendo instalado en su disco duro Los nodos arrancan diskless a traves de PXE Rocks una distribucion especializada para clusteres usando CentOS que a su vez esta basada en Red Hat EnterpriseVease tambien EditarComputacion distribuida Arquitectura de computadores Nodo informatica Red de computadorasEnlaces externos EditarEstrategia De Implementacion De Un Cluster De Alta Disponibilidad De N Nodos Sobre Linux Usando Software Libre Cluster de Alta Disponibilidad y Equilibrado de Carga para la Aplicacion FarHosManejo de Cluster en WebSphere IBM Network Deployment http cluster linux com ar enlace roto disponible en Internet Archive vease el historial la primera version y la ultima Experiencia de Cluster con Software Libre openMosix enlace roto disponible en Internet Archive vease el historial la primera version y la ultima Otra vision de clustering en informatica la clasificacion no supervisada Conferencia realizada en Elche en el 2004 Explica clusteres LVS Beowulf y openMosix Lista Top500 con los ordenadores mas potentes del mundo Proyecto de grado sobre cluster para procesamiento de alto rendimiento Configurar un LVS Configuracion HA Network File System NFS Lustre Parallel Virtual File System PVFS Open Source Cluster Application Resources OSCAR ABC GNU Linux Automated Beowulf Cluster Distribution Rocks Cluster Distribution Condor Cluster Definiciones y ejemplos Cluster uhu Implementacion de un cluster de computadoras Wikimedia Commons alberga una galeria multimedia sobre Cluster de computadoras Datos Q206637 Multimedia Clusters computing Obtenido de https es wikipedia org w index php title Cluster de computadoras amp oldid 137512059, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos