Approved Reseller
Approved Reseller
El uso de clústers de computadoras es un paradigma de cómputo muy poderoso para lograr cargas de trabajo bastante grandes y para implementar aplicaciones muy específicas, como un algoritmo de inteligencia artificial. Pero ¿Qué pasaría si en lugar de centralizarlo, aplicáramos el cómputo con clúster más cerca del punto final de aplicación? En esta entrada veremos como podemos implementar Edge Computing con un clúster de dimensiones reducidas y qué efectos tiene en el proyecto final.
Como mencionamos en la introducción, un clúster de computadoras busca aumentar las capacidades de cómputo de un servidor convencional. Por definición, un clúster es un grupo de computadoras que trabajan en conjunto. Ahora ese mismo concepto puede llevarse al Edge Computing tomando la ubicación del clúster. Si colocamos un grupo de computadoras que lleven a cabo una serie de cálculos computacionales sin tener que llevarlos a un servidor central podemos disminuir la latencia y la carga de la red.
Los avances en computadoras de una sola tarjeta permiten que este enfoque sea una realidad. Por ejemplo, los módulos de cómputo de Raspberry Pi o los módulos NVIDIA Jetson Nano permiten implementar un clúster computacional en un espacio reducido, en vez de usar un gabinete en un cuarto completo.
Por ahora sabemos que un clúster consiste en un grupo de computadoras trabajando en conjunto, a las que cada una se les conoce como nodo. En cada clúster hay usualmente un nodo maestro seguido de múltiples nodos esclavos (o nodos de trabajo). Todos ellos están conectados y se comunican entre si; típicamente trabajan con el mismo sistema operativo.
Arquitectura básica de un clúster. Vía: Seeedstudio
Cuando un clúster recibe una tarea, como almacenar y procesar una serie de datos, el nodo maestro se vuelve el responsable de delegar dicha tarea a los nodos esclavos. El modo en que la carga de trabajo se distribuye entre los nodos es lo que distingue a un clúster de otro. Algunos, por ejemplo, se enfocan en proveer el mejor desempeño posible, mientras que otros se diseñan para funcionar a prueba de fallos.
Existen tres tipos principales de clústers que debes conocer, cada uno con un propósito específico y ventajas. Estos clústers son:
Algunas de las ventajas más notables al implementar este tipo de sistemas enfocados al Edge Computing son:
El Turing Pi permite usar hasta 7 módulos de cómputo 3 de Raspberry Pi. Uno de ellos funcionando como nodo maestro y los seis restantes como nodos de trabajo. La siguiente versión del TuringPi implementará la siguiente versión del compute module, por lo que tendrá más capacidad de cómputo
Los módulos de cómputo de NVIDIA permiten implementar cargas de trabajo exhaustivas, ya que poseen GPUs avanzados que las hacen adecuadas para estas tareas. La Jetson Nano carrier board permite unir la capacidad de estos módulos en una tarjeta para desarrollar proyectos demandantes.
Conclusiones:
El uso de clústers de dimensiones reducidas permite explotar las posibilidades del Edge Computing con una capacidad de procesamiento aumentada. Algunos de las opciones de hardware disponibles se obtienen por parte de Raspberry Pi o de NVIDIA. El planteamiento de un nuevo paradigma de cómputo permitirá transformar la forma en que desarrollamos e implementamos nuevas aplicaciones.
Referencias:
How NVIDIA Jetson Clusters Supercharge GPU Edge Computing
Cluster Computing on the Edge – What, Why & How to Get Started