¿Qué es la computación en clúster?

Vista aérea de furgonetas en un aparcamiento

¿Qué es la computación en clúster?

La computación en clúster es un tipo de computación en el que se conectan varios ordenadores para que trabajen juntos como un único sistema. El término “clúster” se refiere a la red de sistemas informáticos conectados entre sí y programados para realizar la misma tarea.

Los clústeres informáticos suelen estar formados por servidores, estaciones de trabajo y ordenadores personales (PC) que se comunican a través de una red de área local (LAN) o una red de área extensa (WAN).

La computación en clúster es un tipo de computación distribuida, un tipo de computación que enlaza ordenadores en una red para realizar una tarea computacional, aumentar la potencia de cálculo y funcionar como un único ordenador. Cada ordenador o "nodo" de una red informática tiene un sistema operativo (SO) y un núcleo de unidad central de procesamiento (CPU) que se encarga de las tareas necesarias para que el software funcione correctamente.

Debido a su alto rendimiento y alta disponibilidad, la computación en clúster tiene muchas aplicaciones, como cloud computing, la inteligencia artificial (IA), la investigación científica y análisis de big data.

Las últimas novedades sobre tecnología, respaldadas por conocimientos de expertos

Manténgase al día sobre las tendencias más importantes e intrigantes del sector en materia de IA, automatización, datos y mucho más con el boletín Think. Consulte la Declaración de privacidad de IBM.

¡Gracias! Se ha suscrito.

Su suscripción se enviará en inglés. Encontrará un enlace para darse de baja en cada boletín. Puede gestionar sus suscripciones o darse de baja aquí. Consulte nuestra Declaración de privacidad de IBM para obtener más información.

¿Cómo funciona la computación en clúster?

En su nivel más fundamental, la computación en clúster utiliza una LAN para conectar varios ordenadores independientes en una red. En la arquitectura del clúster, cada ordenador de la red se denomina "nodo" y está controlado por middleware, un software que permite la comunicación entre cada máquina. Los usuarios del clúster pueden utilizar los recursos de cada ordenador como si fueran una sola máquina, en lugar de máquinas individuales conectadas a través de una LAN.

Un clúster de computación puede conectar desde tan solo dos nodos hasta miles. Por ejemplo, un clúster de Beowulf suele utilizar ordenadores de calidad comercial conectados a través de una LAN y puede ser una alternativa relativamente asequible a un superordenador para determinadas tareas.1

Por otro lado, Kubernetes (una tecnología relacionada con contenedores y adyacente a clústeres que es esencial para la computación en la nube) admite clústeres de hasta 5000 contenedores separados pero conectados nodos. Kubernetes se utiliza en muchos tipos de implementaciones en la nube, incluidas las arquitecturas de nube híbrida y multinube, así como en DevOps y en la modernización de aplicaciones.

Arquitectura de computación en clúster

Las arquitecturas de computación en clúster consisten en un grupo de ordenadores individuales interconectados que trabajan juntos como una sola máquina. Cada recurso está enlazado a través de una conexión de alta velocidad, como una LAN, y en la arquitectura del sistema se denomina un nodo. Cada nodo tiene un sistema operativo, memoria y funciones de entrada y output (I/O).

Existen dos tipos de arquitecturas de clúster, abiertas o cerradas. En un clúster abierto, cada equipo tiene su propia dirección IP. En un clúster cerrado, cada nodo está oculto detrás de un nodo de puerta de enlace. Debido a que el nodo de puerta de enlace controla el acceso a los otros nodos y las direcciones IP se pueden encontrar en Internet, los clústeres cerrados son un riesgo de seguridad menor que los clústeres abiertos.

Otros tipos de computación distribuida

Además de la computación en clúster, hay otros dos tipos de computación distribuida de uso común que también presentan redes de ordenadores conectadas: la computación distribuida y la computación punto a punto.

Computación distribuida: en informática, una infraestructura de computación distribuida se configura para combinar los recursos informáticos que se encuentran en diferentes ubicaciones físicas. Los recursos informáticos disponibles de las distintas máquinas se combinan y se utilizan conjuntamente para resolver un problema. Al igual que el clustering, la computación distribuida utiliza los recursos de varios ordenadores interconectados.

Sin embargo, a diferencia del clustering, solo se usan los recursos no utilizados en los ordenadores conectados a través de la arquitectura de red. SETI, la búsqueda de inteligencia extraterrestre, fue un ejemplo famoso de computación distribuida, donde los recursos informáticos no utilizados de muchos ordenadores se utilizaron para analizar señales de radio del espacio profundo en busca de signos de vida extraterrestre.2

Computación peer-to-peer: la computación o las redes peer-to-peer (P2P) requieren que dos o más ordenadores estén conectados como “pares” en una red, lo que significa que tienen la misma potencia y permisos. A diferencia de la computación en clúster, una arquitectura P2P no requiere un enfoque de gestión centralizada.

En una red P2P, cada nodo actúa como máquina cliente (un ordenador que necesita acceso a un servicio) y servidor (un ordenador que proporciona un servicio). Cada nodo par pone recursos a disposición de otros en la red, incluyendo almacenamiento, memoria, ancho de banda y más.

Tecnologías adyacentes

La computación en clúster se inventó en la década de 1960 como método para distribuir las tareas de cálculo y el almacenamiento de datos entre varios ordenadores. En la década de 1980, los desarrollos en varias tecnologías adyacentes, incluidos PC, procesadores versátiles y LAN, tuvieron implicaciones significativas para la computación en clúster.

Quizá el mayor fue el uso de nodos informáticos multiprocesador en la computación de alto rendimiento (HPC). A medida que crecían los casos de uso de HPC, también lo hacían los casos de uso de la computación en clústeres. Hoy en día, esos usos incluyen los sectores automotriz y aeronáutico, el análisis de datos de satélites y telescopios y el diagnóstico de enfermedades peligrosas, entre otros.

Hoy en día, la computación en clúster se utiliza en muchas de las tecnologías más avanzadas que impulsan nuestro mundo, como la inteligencia artificial (IA), el machine learning (ML) y el cloud computing. Las mayores empresas del mundo utilizan la computación en clúster para mover las cargas de trabajo a la nube, aumentar la velocidad de procesamiento, mejorar la integridad de los datos y mucho más. A nivel empresarial, a los clústeres de computadoras a menudo se les asigna una tarea específica, por ejemplo, equilibrio de carga, alta disponibilidad o el procesamiento a gran escala de datos en un centro de datos.

Computación de alto rendimiento

4ª generación de procesadores Intel Xeon Scalable en IBM Cloud

Conozca el compromiso de Intel e IBM con la próxima generación de microarquitectura para el sector de la nube.

Beneficios empresariales de la computación en clúster

Los clústeres de computación están diseñados principalmente para ser más fiables y de mayor rendimiento que otros tipos de arquitecturas de computación, lo que los hace indispensables para la empresa moderna. Por ejemplo, los clústeres modernos tienen tolerancia a fallos incorporada, un término que se refiere a su capacidad para continuar funcionando incluso cuando falla un solo nodo en una red.

Además, los grandes clústeres de computadoras se basan en sistemas de archivos distribuidos (DFS) y una matriz redundante de discos independientes (RAID) que permiten almacenar los mismos datos en diferentes ubicaciones en varias unidades de disco duro. El clúster beneficia a la empresa moderna de muchas maneras; estos son algunos ejemplos: 

Rendimiento

Debido a su dependencia del paralelismo, los clústeres de computadoras se consideran de alto rendimiento y normalmente pueden procesar datos más rápido y manejar cargas de trabajo mayores que un solo ordenador.

Fiabilidad

La computación en clúster se considera altamente fiable debido a su incorporación de tecnologías DFS y RAID. En un clúster de computadoras, incluso si falla un solo nodo, la red sigue funcionando y DFS y RAID seguirán garantizando que se realicen copias de seguridad de los datos en varios lugares. 

Disponibilidad

Además de ser altamente fiable, la computación en clúster también se considera altamente disponible debido a su capacidad para recuperarse rápidamente del fallo de un solo nodo. Si un clúster funciona correctamente, cuando un nodo falla, su trabajo se transfiere sin problemas a otro del clúster sin que se produzca una interrupción del servicio.

Escalabilidad

La computación en clúster es altamente escalable porque pueden añadirse nodos de clúster en cualquier momento para aumentar el rendimiento. La capacidad de ajustar dinámicamente los recursos dentro de un clúster significa que éste puede ampliarse o reducirse en función de la demanda. 

Coste

La computación en clúster es más rentable que otros tipos de computación. Muchas empresas modernas confían en la computación en clúster para mejorar el rendimiento, la escalabilidad y la disponibilidad de su infraestructura informática a un precio asequible.

Tipos de clústeres

Los clústeres de computación varían mucho tanto en complejidad como en propósito. Los clústeres de nodo dual relativamente simples, por ejemplo, conectan solo un par de ordenadores, mientras que el superordenador Aurora, por otro lado, conecta más de 10 000.3

Los clústeres tienen muchos casos de uso empresarial debido a su alto rendimiento, escalabilidad y flexibilidad, pero también son utilizados por universidades y facultades de medicina para la investigación científica. En función de sus características, los clústeres de computación se dividen en tres tipos diferentes: alta disponibilidad, equilibrio de carga y alto rendimiento. 

Clústeres de alta disponibilidad

Los clústeres de alta disponibilidad transfieren automáticamente las tareas de un nodo que ha fallado inesperadamente a otro nodo de la red que sigue en funcionamiento. Esta capacidad de adaptarse rápida y fácilmente cuando un nodo falla los hace ideales para cargas de trabajo donde evitar la interrupción del servicio es crítico.

Clústeres de equilibrio de carga

Los clústeres de equilibrio de carga o, simplemente, los equilibradores de carga, garantizan que el trabajo se distribuya equitativamente entre los nodos de un clúster. Sin equilibrio de carga, los nodos se verían abrumados por las tareas que se les asignaron y fallarían con más frecuencia. Hay diferentes tipos de equilibrio de carga para diferentes propósitos. Uno de los más famosos, el Linux Virtual Server, es gratuito y de código abierto y se utiliza para desarrollar servidores de alto rendimiento y alta disponibilidad basados en tecnología de clúster.

Clústeres de computación de alto rendimiento

Los clusters HPC son una red de potentes procesadores que pueden procesar conjuntos masivos de datos multidimensionales, también conocidos como big data, a una velocidad extremadamente alta. Requieren redes de alta potencia y una latencia ultrabaja para mover los archivos entre los nodos.

A diferencia de los clústeres de equilibrio de carga y alta disponibilidad, los clústeres de HPC tienen más potencia  de procesamiento y están especialmente diseñados para el análisis de datos, como el diagnóstico de enfermedades, el análisis de grandes cantidades de datos financieros y la secuenciación de genomas. Además, los clústeres HPC utilizan la interfaz de paso de mensajes (MPI), un protocolo para arquitecturas de computación paralela que permite la comunicación entre nodos.

Clústeres de inteligencia artificial

Los clústeres de IA son clústeres informáticos construidos especialmente para cargas de trabajo de IA y ML (machine learning), como el reconocimiento facial y del habla, procesamiento del lenguaje natural (PLN) y la conducción autónoma. Los clústeres de IA están diseñados especialmente para los algoritmos en los que se entrenan los modelos de IA.

Casos de uso de computación en clúster

Los clústeres informáticos tienen una amplia gama de usos. Desde aplicaciones empresariales como el cloud computing y el análisis, hasta software que ayuda a crear efectos especiales 3D llamativos para las películas, estos son algunos ejemplos:

Análisis de big data

La computación en clúster puede procesar grandes volúmenes de datos con rapidez y eficacia, lo que la convierte en una herramienta ideal para el análisis de big data. Desde el potente motor de búsqueda de Google hasta el software que analiza el mercado de valores y el análisis de sentimiento en las redes sociales, las aplicaciones de la computación en clúster en el espacio del análisis son excelentes y variadas.

Gráficos 3D

Las capacidades de procesamiento paralelo de la computación en clúster impulsan los gráficos más avanzados de los videojuegos y el cine. Mediante un clúster de nodos independientes, cada uno con su propia unidad de procesamiento gráfico (GPU), el renderizado de computación en clúster (o renderizado en clúster) genera una imagen única calibrada en varias pantallas. Este proceso reduce considerablemente la cantidad de tiempo que se tarda en crear imágenes 3D de alta calidad.

Inteligencia artificial y machine learning

En las cargas de trabajo de IA y ML (machine learning), la computación en clúster ayuda a procesar y analizar conjuntos de datos con rapidez y precisión, una parte esencial del entrenamiento de potentes modelos de IA que impulsan aplicaciones como ChatGPT.

Análisis de riesgos

Las compañías de seguros y las firmas de comercio financiero utilizan la computación en clúster para analizar los datos y cuantificar los riesgos de comprar determinadas acciones o ofrecer seguros a ciertos clientes. La computación en clúster se utiliza para analizar big data y extraer conocimiento que puede utilizarse para tomar decisiones empresariales más informadas.

Soluciones relacionadas
IBM Spectrum LSF Suites 

La suite IBM Spectrum LSF es una plataforma de gestión de carga y programación de trabajos para computación distribuida de alto rendimiento (HPC).

Explore las suites de Spectrum LSF
Soluciones de almacenamiento y servidores de computación de alto rendimiento (HPC) | IBM

Las soluciones de HPC de nube híbrida de IBM ayudan a abordar desafíos de gran escala y de uso intensivo de recursos informáticos y aceleran el tiempo de conocimiento.

Explore las soluciones HPC
Soluciones de infraestructura en la nube

Encuentre la solución de infraestructura en la nube adecuada para las necesidades de su empresa y escale los recursos según la demanda.

Soluciones en la nube
Dé el siguiente paso

Potencie sus cargas de trabajo de IA y computación intensivas más exigentes con las soluciones HPC de IBM. Aproveche la flexibilidad de la nube híbrida y la infraestructura de vanguardia para acelerar su camino hacia la innovación.

Explore las soluciones HPC