El acelerón tecnológico impulsado por la pandemia de Covid-19 ha propiciado una expansión de Kubernetes hacia compañías de cualquier tamaño y sector. En los últimos dos años, Kubernetes ha pasado del desarrollo y las pruebas a los entornos de producción en muchas empresas. Juan Zamora, fundador y CEO de Hopla! Software, responde a diez preguntas fundamentales sobre esta tecnología y su aplicación en las empresas.
Índice de temas
1. ¿Qué es Kubernetes?
Es una plataforma de código abierto que orquesta contenedores, es decir, paquetes de aplicaciones y componentes que funcionan de forma independiente dentro del sistema. Kubernetes permite que un gran número de contenedores trabajen juntos en armonía y que las cargas operativas se reduzcan.
Los contenedores se han vuelto muy populares porque proporcionan una forma coherente de empaquetar los componentes de una aplicación en un único objeto. El contenedor se ejecuta de la misma manera en cualquier entorno y tiene la capacidad de comenzar y terminar rápidamente, lo que permite que las aplicaciones escalen a cualquier tamaño. Otra característica de los contenedores es que pueden facilitar la creación de flujos de trabajo para aplicaciones que se ejecutan en local y en la nube, lo que permite un funcionamiento fluido de casi cualquier entorno híbrido.
2. ¿Cómo se está utilizando Kubernetes en las empresas?
Kubernetes ayuda a gestionar la complejidad del software. A medida que las aplicaciones empresariales se vuelven más sofisticadas, los equipos de desarrollo y operaciones (DevOps) necesitan una herramienta que pueda orquestar esa complejidad. Es decir, una forma de lanzar todos los servicios que dependen de estas aplicaciones, asegurándose de que estén en buen estado y que puedan conectarse entre sí.
3. ¿Qué empresas están implantando Kubernetes y para qué usos?
En realidad Kubernetes es la plataforma de ejecución de aplicaciones basadas en contenedores que se ha convertido en el estándar: es el paradigma de despliegue de aplicaciones, válida para cualquier tipo de empresa que haga uso de una aplicación sin importar su fin, tanto para uso interno como para uso de sus clientes externos, igual si se desarrolla internamente o si se hace por terceros, para ejecutarla en la nube o en el centro de datos propio, tanto si es nueva como si lo que se quiere es modernizar de un modo simple.
4. ¿Kubernetes es interesante solo para grandes compañías o también vale para pymes?
Cualquier empresa haga uso de una aplicación, no importa que sea grande o pequeña, se va a beneficiar inmediatamente de las ventajas que tiene Kubernetes como plataforma de ejecución de aplicaciones. No responde a un determinado perfil de aplicaciones en cuanto a tamaño o arquitectura: cualquier cosa se puede y se debería ejecutar sobre Kubernetes. Visto de otro modo, Kubernetes no tiene “contraindicaciones” o casos de uso donde no sea recomendable.
5. ¿Qué tipo de problemas resuelve Kubernetes?
Quien comienza a utilizar K8s (o Kubernetes) trata de solventar varios problemas: lograr una mayor agilidad de los procesos de despliegue de aplicaciones acortando los tiempos de puesta en producción; ejecutar las mismas de forma más eficiente y segura; disponer de una plataforma capaz de soportar futuros crecimientos o picos de carga, o contar con un mecanismo repetible para instalar las aplicaciones en entornos locales o de nube pública de cualquier proveedor (AWS, Azure, Google Cloud o Alibaba Cloud).
6. ¿Por qué es una solución interesante?
Porque, fundamentalmente, viene a eliminar los problemas de aislamiento que han venido presentando los sistemas operativos desarrollados para x86 (Windows y Linux) y de los cuales carecían otros sistemas operativos tradicionales como AIX o Solaris. De esta manera, la mínima ventaja técnica competitiva que pudieran tener estos sistemas se ve superada con creces gracias a Kubernetes y la tecnología de ejecuciones basadas en contenedores.
7. ¿Algún caso concreto de problema de empresa resuelto gracias a Kubernetes?
Un ejemplo que nos gusta mucho mencionar es que algunas empresas de comercialización de productos online con millones de clientes en todo el mundo tienen la posibilidad de sacar varias versiones del software en un mismo día y así adaptarse de una manera muy ágil a las necesidades del mercado.
8. ¿Es muy costoso adoptar Kubernetes?
En absoluto y podemos afirmarlo en base a los siguientes puntos: es Software Libre, por lo que su utilización no se ve limitada por una licencia de uso por la que habría que pagar. El soporte, en caso de ser necesario, sí tendría un coste, ya que debe ser prestado por personas, pero en muchísimos casos va a ser más interesante económicamente que si fuera software privativo. Por otro lado, la tecnología de contenedores que Kubernetes se ocupa de orquestar, por lo que ofrece una mayor densidad en la ejecución de aplicaciones, es decir, que mejora el aprovechamiento del hardware subyacente y, por tanto, permite hacer más con menos.
9. ¿La popularidad de Kubernetes no se traducirá a la larga en un aumento de costes?
Kubernetes fue originalmente desarrollado por Google y ahora es administrado por Native Computing Foundation (CNCF). Nadie paga por su uso, sino por la adaptación de ese código a su entorno empresarial, que se puede hacer desde los propios departamentos de desarrollo o con la ayuda de una empresa especializada, como Hopla! Software. Es código abierto, lo que quiere decir que está a disposición de cualquier empresa o desarrollador que desee adoptarlo para su entorno de trabajo. De manera libre, gratuita, y para siempre.
10. ¿Cómo puedo iniciar a mi empresa en el uso de Kubernetes?
En la web de Hopla! ofrecemos diversos recursos gratuitos a cualquier persona interesada en profundizar sobre Kubernetes. En nuestro blog está disponible la “Guía para crear una estrategia empresarial de Kubernetes”, un documento técnico en el que la fundadora de Rancher, Shannon Williams, comparte las mejores prácticas desarrolladas desde su amplia experiencia. En nuestro canal de Youtube también pueden consultarse los webinarios en abierto, titulados “Kubernetes en casa”, que constituyen una fuente de aprendizaje para futuros expertos.