La plataforma de gestión de contenedores de código abierto y nativa de la nube, Kubernetes, es un cambio de paradigma para las empresas que buscan hacer que sus fases de desarrollo, pruebas y producción sean más consistentes en todas las plataformas.
Aunque no son tan existenciales, las mismas preguntas que se plantean en torno a la IA y el aprendizaje automático, se están haciendo sobre Kubernetes. ¿Amenazarán y sustituirán las funciones de los equipos de IT por su capacidad para «orquestar» y «automatizar» la gestión de los entornos en contenedores? Como siempre, la realidad es que las nuevas tecnologías crean oportunidades en lugar de eliminarlas.
Los desarrolladores ya tienen una libertad, independencia e influencia significativas sobre las decisiones de compra: entre el 70 y el 79% considera que tiene una influencia significativa o total sobre este tipo de inversiones, según IDC. Si tenemos en cuenta que 2,7 millones de los 6,5 millones de desarrolladores nativos en la nube que se cree que existen en el mundo utilizan Kubernetes, según el CNCF, eso es una parte relevante de los recursos que los equipos de IT deben consultar y apoyar… Y, dado que la base de desarrolladores nativos en la nube también está creciendo, demuestra que estas tecnologías de nueva generación están aportando más personas al sector de la gestión de IT y el desarrollo de software que de las que están quitando.
Todos estos ciclos de desarrollo, cada vez más rápidos y automatizados, y la puesta en marcha de contenedores por todas partes, generan dos cosas: costos y datos. ¿Quién gestiona y limita el costo de estas plataformas, y quién gestiona y protege los enormes volúmenes de datos que se crean? La respuesta siempre serán los seres humanos altamente calificados para ese trabajo.
Democratizar el desarrollo
Como ocurre con cualquier tecnología disruptiva, Kubernetes no puede desplegarse y gestionarse sin un periodo de educación y experimentación. Las empresas se encuentran en esa emocionante, pero a veces frustrante, fase de despliegue en la que están probando cosas nuevas. Una de las principales capacidades que los equipos de IT están viendo es el valor que aporta Kubernetes al agrupar los contenedores que componen una aplicación en unidades lógicas. Este enfoque, centrado en la aplicación, ofrece a los equipos de IT la capacidad de acelerar y escalar la entrega de aplicaciones sin el riesgo de errores humanos. Esto significa que la empresa puede entregarlas más rápidamente, a mayor escala y con mayor precisión.
Sin embargo, lo más emocionante no es sólo lo que se puede hacer con ellos, sino lo que podría lograr a un nivel más amplio. Fundamentalmente, Kubernetes está democratizando y convirtiendo en un producto básico a la infraestructura para los desarrolladores de software, sirviendo como núcleo para las aplicaciones modernas y nativas de la nube. Esto nos lleva a lo que viene después para la tecnología. Kubernetes puede funcionar en casi cualquier plataforma, pero las mismas aplicaciones pueden funcionar casi libremente entre ellas.
Esta flexibilidad podría significar que los equipos de IT comiencen a gestionar toda su infraestructura utilizando Kubernetes en lugar de utilizar capas de gestión separadas para contenedores, máquinas virtuales, nube y software como servicio (SaaS). Una capacidad de gestión tan potente tendría todo tipo de implicaciones para los equipos de IT en cuanto al nivel de control que realmente tienen sobre su infraestructura. Por ejemplo, esto podría cambiar la forma en que las empresas gestionan los costos y se aseguran de que cumplen con la normativa de datos pertinente. Sin embargo, también podría significar mucho más en términos de lo que es posible y la velocidad de los ciclos de desarrollo de software y aplicaciones. Esta es solo una de las formas en que Kubernetes podría aumentar seriamente el valor de la función de IT de una organización, así como el valor de las habilidades de IT.
En sectores como los servicios financieros, el comercio minorista y la industria manufacturera, ya no se trata de quién puede hacer qué, sino de quién puede hacerlo primero a la hora de desarrollar aplicaciones. ¿Quién puede innovar más rápido y responder a la cambiante demanda del mercado y a las expectativas de los clientes en días y no en meses?
La vuelta al colegio para los expertos en IT
Un gran poder conlleva una gran responsabilidad. Para aprovechar esta oportunidad, los equipos de IT deben sentirse capacitados con la autoridad, las herramientas y las habilidades para aprovechar al máximo la posibilidad que presenta Kubernetes. Esto requiere un salto de fe hacia lo desconocido. Estas cosas pueden ponernos un poco nerviosos a los que nos dedicamos a la infraestructura.
Sin embargo, muchos ya han dado el salto: en nuestro Informe de Tendencias de Protección de la Nube 2021 hemos descubierto recientemente que el 61% de las organizaciones del mundo están utilizando contenedores en producción, los están probando activamente o tienen la intención de utilizarlos durante el próximo año. Mi respuesta a la preocupación de algunos es que hagamos lo que mejor sabemos hacer y preguntemos lo mismo que hacemos con cualquier plataforma. ¿Sobre qué base se encuentra y cómo habilitamos la arquitectura correcta y necesaria? Cuando lo ves desde un nivel de plataforma o infraestructura, no importa si estamos tratando con aplicaciones individuales o desafíos específicos en torno a lo físico, lo virtual, la nube, Kubernetes y el ecosistema Cloud-Native más amplio. Todos tienen ventajas y desventajas, pero eso no impide que la gente mueva sus cargas de trabajo más importantes a una plataforma óptima.
Además de comprender las oportunidades que Kubernetes está aportando y podría aportar en el futuro, debemos ser conscientes de que ninguna plataforma está libre de riesgos. En este caso, se siguen produciendo situaciones de pérdida de datos que no se abordan mediante la disponibilidad o la replicación. Por lo tanto, las organizaciones siguen necesitando una solución de backup que funcione contra una gran variedad de aplicaciones y métodos de despliegue de este sistema.
Por ejemplo, Kasten K10 de Veeam ha sido construido para centrarse en la aplicación, es nativo de Kubernetes, puede ejecutarse en múltiples clusters en la nube y en las instalaciones, y es consciente de los servicios de datos. A medida que más aplicaciones de contenedores «stateful» se ponen en producción, es probable que aumente la necesidad de proteger los datos de forma integral, es decir, de forma nativa dentro del contenedor, en lugar de «solo» el repositorio de almacenamiento. A su vez, también aumentará la necesidad de realizar backups nativos de terceros.
Adoptando una visión equilibrada y pragmática, es poco probable que Kubernetes y Cloud-native sean la solución a todo hoy o no lo sean en el futuro. Sin embargo, los equipos de IT necesitan entender de qué son capaces y sus beneficios comparativos para tomar las decisiones con fundamentos. No dan miedo ni son más difíciles de entender que las plataformas que hemos estado utilizando durante años. Al igual que ellas, son capaces de hacer grandes cosas -quizás más-, prosperan en ciertos escenarios y son menos adecuadas para otros, y todos los datos siguen necesitando ser respaldados y protegidos en caso de que se pierdan.
Los equipos que sean capaces de aprovechar al máximo el potencial de Kubernetes podrán ganar mucho cuando se trate de aumentar la velocidad y la calidad de los ciclos de desarrollo de las aplicaciones, sacando al mercado nuevas funciones, servicios y productos para sorprender y deleitar a los clientes. Imagínese esto, un escenario en el que Kubernetes no sólo permite que el desarrollo de aplicaciones sea rápido y eficiente, sino que esa misma plataforma se utiliza para orquestar otras áreas de la empresa, máquinas virtuales o IaaS basada en la nube y otras cargas de trabajo que se benefician del mismo mecanismo de organización.