Kubernetes como catalizador de la nube nativa
Los sistemas clásicos actualizados y mantenidos durante años ya no son de última generación
La infraestructura como código (IaC), por su parte, describe un estado objetivo y deja el trabajo real a las herramientas de automatización. Kubernetes no solo se ha establecido como el estándar de facto para la infraestructura de microservicios, sino que también cuenta con una flota considerable de nuevas soluciones de software innovadoras. El panorama de la Cloud Native Computing Foundation (CNCF), que se fundó específicamente con este fin, comprende ahora alrededor de 1200 productos en torno a Kubernetes.
Iniciado a partir de la insatisfacción con la orquestación de contenedores existente de Docker-Swarm, no era previsible que un pequeño proyecto paralelo de algunos desarrolladores de Google cambiaría el mundo del software. Solo su lanzamiento como código abierto en 2014 permitió la colaboración mundial y un crecimiento constante. El gran avance se produjo entonces, literalmente, jugando: Niantic, una filial de Google, confió en Kubernetes en la sala de máquinas de su juego de realidad aumentada Pokémon Go desde el principio. La estabilidad y la enorme escalabilidad establecieron nuevos estándares.
No solo los grandes hiperescaladores AWS, Azure y Google Cloud ofrecen infraestructura y Kubernetes gestionados, sino que proveedores alemanes como Open Telekom Cloud o Ionos también tienen ofertas correspondientes en su cartera. Para los proveedores sin Kubernetes gestionados, existen automatizaciones ya preparadas que son igualmente fáciles de implementar.
Ya sea en las compras en línea o en el comercio minorista, en el streaming o en los portales de noticias, en la producción o en la logística, cada vez más empresas confían en las aplicaciones Kubernetes. Incluso en sectores críticos para la seguridad, como bancos, aseguradoras, empresas de infraestructuras o incluso autoridades públicas, Kubernetes se ha vuelto indispensable. En estos ámbitos, a menudo es necesario operar el sistema en el propio centro de datos. Las distribuciones de Enterprise Linux también ofrecen soluciones Kubernetes para este fin.
Con OpenShift, Red Hat proporciona una completa caja de herramientas para la gestión del ciclo de vida de las aplicaciones, además de Kubernetes. Con Rancher, Suse se centra no solo en la gestión de cargas de trabajo, sino también en la gestión de clústeres de Kubernetes a través de los límites de la infraestructura. Ubuntu ofrece pilas de aplicaciones completas con MicroK8s y los operadores encantados. Siguiendo su estrategia de código abierto, SAP ha liberado su gestión de clústeres Gardener, inicialmente desarrollada internamente, bajo licencia Apache y ofrece así un instalador certificado por CNCF para Kubernetes. Además, están surgiendo nuevas distribuciones que -siguiendo los principios cloud-native- reducen en gran medida el sistema operativo y, como el propio Kubernetes, pueden controlarse completamente a través de una API.
Los principios de la computación nativa en la nube no se limitan, contrariamente a su nombre, a la aplicación en la nube. Las características básicas de observabilidad, elasticidad, escalabilidad, sistemas de servicio de servicios y unidades de aprovisionamiento autónomas también pueden implementarse en la propia infraestructura. De este modo, pueden proporcionarse aplicaciones complejas compuestas por diferentes microservicios de forma altamente disponible, resistente y adaptable. La infraestructura también puede funcionar de forma resistente y adaptable siguiendo estos principios. La monitorización, el registro y la gestión de políticas proporcionan la información necesaria para explotar las capacidades de autorreparación de Kubernetes.
Las abstracciones e interacciones de los componentes implicados aportan inevitablemente una mayor complejidad al sistema global. Esta complejidad requiere normas libres, interfaces definidas y colaboración colectiva. El código abierto permite precisamente esta colaboración. Ya es posible operar una nube privada completamente libre con OpenStack, Kubernetes, Ceph y otros componentes libres.