Por qué Kubernetes no es ideal para la infraestructura industrial

Una de las tecnologías más transformadoras que han surgido en los últimos años es la contenedorización de software, que revoluciona la forma en que las empresas industriales desarrollan, despliegan y gestionan sus soluciones de software. Kubernetes es muy útil para cargas de trabajo grandes y dependientes de la nube, como las aplicaciones web, pero no es óptimo para cargas de trabajo más pequeñas y orientadas a la industria que deben operar en entornos complejos y aislados‍. En este artículo explicamos por qué.

Tecnología
Escrito por:
David Purón
Etiquetas:

Evolución de la infraestructura industrial: De lo físico a lo virtual

Si abriéramos el capó de un coche hace 20 años, veríamos cientos de tipos de dispositivos que cumplían funciones específicas, conectados por cables y tuberías de todo tipo y color. El otro día, mi amiga me enseñó su flamante Tesla Model S, y me quedé de piedra al abrir el capó: sólo veía una pequeña caja negra que, según ella, era el cerebro del coche. La razón es sencilla y conocida: todo es software.

Las plantas industriales no son diferentes; están sustituyendo continuamente elementos físicos como PLCs, HMIs, robots, etc., por versiones virtualizadas, mejorando la eficiencia y el coste pero también enfrentándose al reto constante de gestionar entornos de software extremadamente complejos a los que no están acostumbrados.

Una de las tecnologías más transformadoras que han surgido en los últimos años es la contenedorización de software, que revoluciona la forma en que las empresas industriales desarrollan, despliegan y gestionan sus soluciones de software. La contenedorización es a la gestión de software lo que los food trucks son al reparto de comida. Sin los camiones de comida, cualquiera que quisiera vender comida en la calle tendría que hacer grandes inversiones en un local fijo, un amplio equipamiento de cocina y una gran plantilla para llevar a cabo sus operaciones. Entonces aparecieron los camiones de comida, que aportaron flexibilidad, movilidad y eficiencia al sector de la restauración.

"La contenedorización es a la gestión de software lo que los food trucks al reparto de comida: aporta flexibilidad, movilidad y eficiencia".

El software moderno, incluidos los controladores lógicos, los corredores de datos, las bases de datos, las herramientas de visualización e incluso los modelos de IA, pueden empaquetarse en un formato portátil llamado "contenedores". Estos contenedores se reutilizan, se instalan, se configuran, se accede a ellos y se actualizan de la misma manera, independientemente de lo que haya dentro del contenedor, creando así enormes eficiencias y portabilidad a través de diferentes infraestructuras subyacentes. Hoy en día, un equipo de un puñado de ingenieros puede gestionar miles de contenedores distribuidos en varias ubicaciones. Pero para ello se necesita una solución de gestión y orquestación de contenedores.

Entre las diferentes tecnologías de gestión y orquestación de contenedores, Kubernetes, anunciada por primera vez por Google en junio de 2014 y lanzada como proyecto de código abierto en julio de 2015, se ha convertido sin duda en la plataforma de orquestación de contenedores más utilizada.

Con frecuencia recibimos peticiones de clientes industriales que nos preguntan si deberían utilizar Kubernetes para gestionar su infraestructura de Edge Software en fábricas, subestaciones eléctricas, plantas de tratamiento de aguas y otros despliegues industriales. A menudo se sorprenden cuando lo desaconsejamos, así que pensé que sería una buena idea compartir nuestros puntos de vista sobre los fundamentos que hay detrás de esto.

Retos del uso de Kubernetes en instalaciones industriales

Permitidme empezar diciendo que nos encanta Kubernetes; es una herramienta magnífica que utilizamos para gestionar nuestro software en la nube. Entonces, ¿por qué no recomendarlo para instalaciones industriales? He aquí las razones:

Dependencia de la nube: Todos los principales proveedores en la nube ofrecen servicios gestionados de Kubernetes, aprovechando sus funciones de plataforma como servicio para simplificar el proceso de puesta en marcha y escalado posterior. Sin embargo, conectar instalaciones industriales a la nube suele ser poco realista por motivos de seguridad o de cumplimiento normativo, y la alternativa de crear un clúster de Kubernetes in situ está llena de costes ocultos que surgen durante la configuración inicial y el mantenimiento continuo.

Control: Kubernetes está diseñado para permitir a los usuarios declarar lo que quieren sin necesidad de saber exactamente cómo se logrará. Puede especificar: "Quiero ejecutar dos instancias de esta aplicación", pero no sabrá dónde se ejecutarán. Aunque esto es muy potente desde el punto de vista del usuario, no es lo ideal para el sector industrial. Por ejemplo, si está ejecutando contenedores en subestaciones de energía, necesita saber dónde se ejecutarán, ya que cada subestación puede tener diferentes configuraciones o condiciones de contexto. El mundo industrial es mucho más sensible al control de recursos.

"El mundo industrial es mucho más sensible al control de recursos, y el enfoque abstraído de Kubernetes no es ideal para estos entornos".

● Redes: Los entornos industriales tienen configuraciones de red complejas, y las abstracciones de red de Kubernetes no se integran fácilmente con la red propia de los contenedores, lo que complica la conexión y la gestión de contenedores con activos industriales externos.

● Curva de aprendizaje: Kubernetes, aunque potente y versátil, tiene una curva de aprendizaje pronunciada que puede ser un reto para los usuarios no expertos en TI. Su arquitectura requiere un profundo conocimiento para gestionar y desplegar aplicaciones en contenedores de forma eficaz. Esta complejidad aumenta cuando se integra con la infraestructura existente y las herramientas de terceros.

Estabilidad: Kubernetes se construyó en una cultura orientada a las TI, fomentando el compromiso y la evolución continua con lanzamientos constantes. Aunque esta evolución constante mantiene la plataforma a la vanguardia, presenta retos importantes para el sector industrial, que requiere estabilidad y consistencia en las operaciones.

En otras palabras, Kubernetes es muy útil para cargas de trabajo grandes y dependientes de la nube, como las aplicaciones web, pero no es óptimo para cargas de trabajo más pequeñas y orientadas a la industria que deben operar en entornos complejos y aislados.

"Kubernetes es genial para cargas de trabajo grandes y dependientes de la nube, pero no es óptimo para cargas de trabajo más pequeñas y orientadas a la industria que deben operar en entornos complejos y aislados."

¿Cuál es la alternativa?

Una alternativa a Kubernetes: Gestión edge nativa de Docker

Hace años, empezamos a desarrollar nuestra plataforma de gestión y orquestación Edge utilizando software nativo Docker en lugar de Kubernetes. Docker es el formato más utilizado para contenedores de software, y Docker Inc. proporciona grandes herramientas como Docker Compose y Docker Swarm, que ofrecen características adicionales de escalabilidad, orquestación y disponibilidad que van más allá de la pura ejecución de contenedores.

"Utilizando software nativo de Docker en lugar de Kubernetes, la plataforma de Barbara ofrece características similares al tiempo que supera los desafíos de los entornos industriales que no son en la nube."

Utilizando estas herramientas fundacionales, en Barbara hemos desarrollado una plataforma de orquestación de contenedores que ofrece características similares a Kubernetes, pero supera los retos mencionados anteriormente, por lo que es ideal para entornos industriales no basados en la nube.

Los contenedores gestionados por la plataforma Barbara pueden desplegarse en pequeños PC industriales integrados in situ sin dependencia alguna de la nube. La plataforma proporciona a los usuarios un control total sobre dónde y cómo se ejecutarán las cargas de trabajo, incluidas funciones de red avanzadas y conectores de protocolo que funcionan de forma inmediata en las plantas industriales. Todo ello con la fiabilidad y estabilidad que requieren los entornos OT, con una experiencia de usuario más sencilla que un cliente calificó como "el Apple del Edge."

Tenemos muchas ganas de ver cómo evoluciona la tecnología Kubernetes, y la integraremos para nuestros proyectos industriales en cuanto esté lista para abordar escenarios industriales de vanguardia. Pero mientras tanto, proporcionamos a través de la plataforma de Barbara una alternativa para los clientes que desean utilizar aplicaciones similares a Kubernetes en entornos que no son adecuados para ello. Kubernetes es genial, pero no para todos los casos, y especialmente no para la orquestación de cargas de trabajo localizadas en entornos industriales cerrados de misión crítica.

Sobre Barbara

Con la ciberseguridad en el corazón, Barbara es la Plataforma Industrial Edge para organizaciones que buscan superar los retos de trabajar con aplicaciones de datos en tiempo real en entornos de misión crítica.  

Con Barbara, las empresas pueden desplegar, configurar y mantener contenedores y modelos de IA en miles de dispositivos de forma sencilla, con la autonomía, privacidad y sensibilidad temporal que la nube no puede igualar.

Manténgase al día con Edge Computing. Vea nuestro reciente seminario web sobre "Cómo maximizar sus datos Edge: Transición de un Edge Conectado a un Edge Inteligente" .