Hola, soy Jon Rodríguez, formo parte del equipo DevOps y Sistemas y he asistido al CNCF Europe 2022. Llevo varios años trabajando para Bosonit y me fascina la tecnología. Pero sobre todo automatizar procesos. En los últimos años ha habido una tendencia a introducir las aplicaciones, que antes alojábamos en las propias máquinas, en contenedores. Pero ¿realmente se conocen los límites de los contenedores?
Para ello vengo a hablar de mi experiencia en la conferencia KubeCon + CloudNativeCon Europe 2022 (CNFC) y de algunas tecnologías que me parecieron más innovadoras.
¿Qué es la CloudNativeCon?
Se trata de una conferencia organizada por la Cloud Native Computing Foundation (CNCF), que es parte de la Linux Foundation. La CNCF Europe 2022 se encarga de incubar y mantener proyectos de Software Libre diseñados para funcionar en entornos Cloud. En la actualidad la conforman más de 120 proyectos: Kubernetes, Prometheus, Conteinerd y Harbor, entre otros.
¿Por qué debemos asistir a este tipo de eventos?
Es cierto que en eventos de esta magnitud unos días después de finalizar el evento suben las conferencias a YouTube. Parece absurdo gastarse dinero e invertir gran cantidad de tiempo en ir a ver estos eventos. Pero la realidad es que estando allí podemos interactuar con otros espectadores, hacer preguntas, debatir sobre soluciones y conocer a gente muy interesante. Es muy complicado probar todas las soluciones de software libre y estar al tanto de las que van saliendo y de su evolución. Pero para eso estás allí, te cuentan sus casos de uso, nuevas funcionalidades, pruebas que han hecho, para qué casos de uso utilizan cada solución.
¿Cuál ha sido tu experiencia en la CNCF Europe 2022?
La verdad es que me lo he pasado genial, he conseguido aprender algo más de tecnologías que llevaba mucho tiempo queriendo profundizar y he conocido a gente increíble. La jornada comenzaba con unas presentaciones en la sala principal (keynotes), donde contaban casos de éxito de empresas que adaptaban estas tecnologías, mejoras de las tecnologías y funcionalidades nuevas.
A continuación abrían los pabellones de soluciones, donde cientos de empresas tenían sus puestos y te contaban las soluciones que habían desarrollado. También había una zona de Software Libre donde exponían las nuevas incorporaciones de proyectos a la CNCF. Durante el día se realizaban presentaciones y charlas sobre las tecnologías mas en detalle, en distintos lugares del complejo, donde se podía aprender y profundizar mas en las tecnologías.
¿Cuáles son los límites de los contenedores?
Los límites de los contenedores residen en el sistema ejecutor. No es lo mismo ejecutar contenedores sobre Docker Swarm que sobre una máquina con Docker o sobre un Kubernetes. Además, Kubernetes es un sistema muy customizable, permite cambiar los módulos por otros que sigan el mismo estándar.
Estos módulos nos pueden venir bien para escalar el cluster basándose en eventos, desbuguear los desarrollos, tener una monitorización detallada, aumentar las capacidades de alguno de los componentes del cluster, entre otras funcionalidades. Una de las configuraciones que presentaron en el evento, podía llegar a ejecutar hasta 1 millón de pods en un solo cluster, distribuidos en 100.000 nodos.
¿Qué tecnologías te parecen mas innovadoras del CNCF Europe 2022?
Desde mi punto de vista las soluciones más innovadoras que me han sorprendido son las siguientes:
- Direktiv: Esta solución Open Source permite ejecutar contenedores basados en eventos tanto en local como en Cloud. Es una solución serverless, al igual otras soluciones del mercado como AWS Lambda. Específicamente, el equipo técnico de Direktiv indicaba que era muy superior a Lambda y a otros competidores. Funciona de la siguiente manera: Llega una llamada a nuestra API, se levanta un contenedor en un cluster de Kubernetes, se ejecuta el código que indiquemos, y una vez finalizado, se destruye el contenedor. Me hicieron una demostración de su funcionamiento y me sorprendió el resultado.
- Kubedge: Extiende las capacidades de Kubernetes a la computación en el borde. Puede que no estemos familiarizados con estos conceptos, pero permite ejecutar contenedores y realizar procesamientos de datos en dispositivos con bajos recursos. Por ejemplo, en un entorno con conectividad limitada, se podrían procesar los datos en el mismo lugar, e incluso aplicar modelos de ML. De esta manera, se reduciría el tráfico de red, la latencia y la carga de procesamiento en el cluster principal.
- Akri: También se trata de una solución diseñada para el borde. Extiende las capacidades de Kubernetes permitiendo el auto descubrimiento de dispositivos de video, GPU’s y cámaras IP. Detecta los nodos que tienen acceso a estos dispositivos y planifica tareas en ellos. Están añadiendo otros protocolos y sistemas con los que integrarse. Me parece una solución muy interesante para entornos con dispositivos IoT.
Tengo muchas ganas de probar estas soluciones, y espero poder hacerlo pronto. Os animo a que vayáis a próximos eventos y a que compartáis vuestras experiencias con el resto de compañeros y de comunidad.