Desplegando Inteligencia en el Edge con Docker

29 de marzo de 2022, by Juan Pérez-Bedmar

Docker aporta una flexibilidad enorme a los equipos de desarrollo de aplicaciones: les da la libertad de desarrollar en el lenguaje de programación que ellos prefieran y desplegarlas de manera sencilla sin preocuparse por el hardware final sobre el que vayan a correr. Además, simplifica el mantenimiento y control de versiones de las propias aplicaciones, algo muy útil para despliegue homogéneos en entornos distribuidos.

El uso de contenedores Docker para desplegar aplicaciones en el Edge está cada vez más extendido. El auge de tecnologías como la Inteligencia Artificial o Machine Learning llevadas al Edge (una de las tendencias tecnológicas de 2022 según encuestas como ésta de Red Hat), está acelerando la adopción de Docker como estándar “de facto” de encapsulamiento y despliegue de aplicaciones inteligente.

No obstante, para gestionar despliegues de manera escalable requiere de herramientas que permitan orquestar todo el proceso de manera sencilla, centralizada y segura. 

Docker como Facilitador del Desarrollo de Software

Docker es una tecnología que permite desarrollar y probar aplicaciones de forma rápida y programando en cualquier lenguaje, encapsulándolas en unidades estandarizadas llamadas contenedores. Estos contenedores incluyen todo lo necesario para que la aplicación se pueda ejecutar, incluidas bibliotecas, herramientas de sistema, código y tiempo de ejecución. 

Docker aporta una flexibilidad enorme a los equipos de desarrollo de aplicaciones: les da la libertad de desarrollar en el lenguaje de programación que ellos prefieran y desplegarlas de manera sencilla sin preocuparse por el hardware final sobre el que vayan a correr. Además, simplifica el mantenimiento y control de versiones de las propias aplicaciones, algo muy útil para despliegue homogéneos en entornos distribuidos.

«Precisamente, esta es la característica que define al Edge: se trata de entornos distribuidos en los que múltiples dispositivos (muchas veces de hardware diverso), corren aplicaciones».
Te recomendamos leer: Por qué todo el mundo habla de Docker en el IoT Industrial

Edge Computing, Inteligencia Artificial y el uso de Docker

El Edge Computing es un modelo de computación que consiste en procesar datos en los extremos de la red. Es decir, en nodos mucho más cercanos a donde se capturan los datos.

Este modelo está en plena expansión en los sectores industriales y viene impulsado por otra de las tendencias tecnológicas que los analistas ven que coge fuerza este 2022 como parte de las estrategias de digitalización industrial: la Inteligencia Artificial en el Edge (lo que se conoce como Edge AI).

Esta tecnología se enfoca en el despliegue de algoritmos cerca de donde se originan los propios datos que aquéllos utilizan para sus cálculos. Para ello se utilizan nodos Edge que se sitúan y conectan localmente a las propias fuentes de datos. 

Sectores como el de la Distribución Eléctrica o la Industria del Agua se encuentran inmersos en procesos de transformación digital de gran parte de su negocio y el Edge AI es un habilitador para que estos procesos puedan llevarse a cabo. Y es en estos entornos donde, para el desarrollo y despliegue de los algoritmos de explotación de datos, el uso de Docker se ha ido extendiendo cada vez más. 

Descarga el Barómetro del Edge Computing Industrial

Sin embargo, trabajar con Docker en entornos distribuidos y muchas veces remotos como los que proponen los modelos de Edge Computing o Edge AI, requiere tener unas herramientas que permitan el control de todo el ciclo de vida de los nodos Edge y de la inteligencia que corre en ellos.

Cómo trabajar con Docker en Entornos Distribuidos como el Edge

Para agilizar el trabajo de despliegue y ejecución de Docker en el Edge a gran escala es fundamental tener herramientas que permitan realizar, de forma segura, al menos las siguientes acciones:

a) desplegar contenedores Docker en un nodo Edge o múltiples a la vez

b) actualizar a voluntad las aplicaciones que corren en esos dispositivos, y

c) conocer lo que ocurre durante todo el proceso, mediante pantallas de visualización de logs

En Barbara IoT, precisamente, hemos desarrollado una plataforma que, entre otras cosas, incluye un módulo para gobernar de manera cibersegura toda la inteligencia distribuida en nodos Edge, facilitando las labores de despliegue, depuración y actualización de las aplicaciones que los equipos de Data Scientists hayan desarrollado.

Pero además, la plataforma Barbara, incluye una batería de funcionalidades adicionales orientadas a facilitar la gestión de grandes parques de nodos Edge distribuidos. 

Si estás trabajando en el despliegue de aplicaciones en el Edge en entornos industriales y quieres que te enseñemos cómo nuestra plataforma puede ayudarte en el proceso, no dudes en solicitarnos una demo.

Si buscas desarrollar un proyecto IoT, contáctanos