Kubernetes: 3 años orquestando contenedores

Más allá de su naturaleza, de su funcionalidad, Kubernetes es una de las muestras más recientes del potencial que alberga el código abierto. Este sistema de orquestación de aplicaciones en contenedores fue inicialmente propiedad de Google allá por 2014, cuando aún se conocía como Borg. Lo estuvo utilizando de forma interna para gran parte de sus servicios en la nube, pero en ese momento descubrió que tenía un enorme potencial y que necesitaba de la ayuda de la comunidad Open Source para poder explotarlo.

Así, la primera versión de Kubernetes vio la luz en julio de 2015, algo que ocurrió de forma paralela a la creación de la Cloud Native Computing Foundation (CNFC), con Red Hat como miembro fundador (y segundo  mayor contribuidor del proyecto) junto con Google y otras compañías. Fue el momento en que el gigante de las búsquedas lo cedió a la comunidad para que todos tuvieran la oportunidad de trabajar en su desarrollo y nuevas funcionalidades.

En tan solo tres años, este sistema se ha convertido en un estándar de facto en la industria cloud, siendo clave en la adopción masiva de entornos multicloud e híbridos. No habría sido así de no ser por ese movimiento hacia el mundo del software libre, el mismo que en 25 años ha sido capaz de desarrollar el Kernel de Linux o crear plataformas como OpenStack.

No entraremos en detalles técnicos que puedan alargar este artículo (Brendan Burns, uno de sus creadores, lo explica  mucho mejor en este vídeo), pero básicamente Kubernetes es un sistema que permite desacoplar las aplicaciones del hardware y de otros componentes de software necesarios para su correcta ejecución.  Es capaz de distribuir de forma automatizada esos componentes y abstraerlos del lugar donde estén albergados, orquestándolos para que su despliegue, gestión, ejecución y escalado sean procesos mucho más simples, rápidos y eficientes para los administradores.

No hay más que ver la larga lista de miembros que trabajan en el desarrollo de este proyecto como parte de la CNFC. Es destacable la presencia de todos los grandes proveedores de servicios en la nube a nivel mundial: Alibaba, AWS, Azure, Google Cloud, IBM Cloud, Huawei Cloud, Oracle… y un largo etcétera de socios interesados en el desarrollo de arquitecturas multicloud. Todos ellos no solamente lo usan de forma interna, sino que también proporcionan servicios a terceras empresas, a clientes finales.

A continuación, las principales mejoras que Kubernetes ha experimentado a lo largo de sus tres años de vida:

  • Septiembre de 2015: el uso de Kubernetes de la Container Network Interface (CNI) ha permitido un rico ecosistema de opciones de red desde los primeros días de Kubernetes.
  • Diciembre de 2016: la adición de Container Runtime Interface (CRI), la forma en que los contenedores arrancan y se detienen, fue un importante paso adelante del Kubernetes 1.5 y versiones posteriores, y ayudó a avanzar hacia contenedores y herramientas que cumplan con OCI.
  • Enero de 2017: etcd v3, la columna vertebral de los sistemas distribuidos a gran escala creados por CoreOS y mantenidos en Red Hat, entró en producción en Kubernetes 1.6.
  • Junio ​​de 2017: las Definiciones de Recursos Personalizados (Custom Resource Definitions – CRD) se introdujeron para permitir la extensión API por parte de aquellos que están fuera de la plataforma central.
  • Octubre de 2017: la estabilidad del control de acceso basado en roles (RBAC), que permite a los administradores controlar el acceso a la API de Kubernetes, ha hecho que Kubernetes sea aún más fiable con esta característica de seguridad que es valorada por las empresas. Alcanzó la estabilidad en Kubernetes 1.8 pero había sido ampliamente utilizado en la plataforma desde la versión 1.3.
  • Marzo de 2018: la forma de proporcionar y consumir el almacenamiento ha avanzado en tres años con la disponibilidad de volúmenes locales persistentes (PV) y PV provisionados dinámicamente. A partir de este momento, la Interfaz de Almacenamiento de Contenedores (Container Storage Interface – CSI), que hace que el plugin layer de volúmenes de Kubernetes sea más extensible, se convirtió en beta este año en Kubernetes 1.10.
  • Junio ​​de 2018: La versión de Definición de Recursos Personalizados (CRD) se introdujo como beta en Kubernetes 1.11 y es un paso hacia la reducción de barreras y facilita la creación de operadores.
Pablo Fernández

Informático reconvertido a periodista, Pablo Fernández Torres comenzó su andadura profesional como redactor técnico y coordinador web en la revista PC Actual. Tras 7 años en esta publicación decidió dar el salto al segmento IT profesional para liderar el lanzamiento a finales de 2008 de la cabecera Silicon en España y posteriormente en la región LATAM. En la actualidad ejerce como director editorial Internacional de NetMedia Group, que edita otras publicaciones online como ITespresso, Channelbiz, SiliconWeek, B!T y ZDnet Germany.

Recent Posts

The Scale-Up! World Summit se celebrará por primera vez en DES 2022

The Scale-Up! World Summit, el foro para startups y empresas escalables que se celebrará por…

6 horas ago

Google lanza en Madrid su primera Región Cloud de España

Google presenta su primera Región Cloud de España en Madrid.

7 horas ago

Más del 80 % de los españoles quiere seguir teletrabajando

España es el tercer país de la UE con mayor número de población ocupada que…

7 horas ago

Aprobado el “PERTE Chip” con una inversión pública de 12.250 millones de euros

El Consejo de Ministros ha aprobado la inversión de 12.250 millones de euros destinados a…

8 horas ago

Estos son los errores que tienes que evitar al migrar tu negocio a la nube

La adopción de servicios en la nube se ha convertido en esencial para aquellas empresas…

12 horas ago

Oracle: “La competitividad ya no está en cómo gestionas la tecnología, sino en el uso que haces de ella”

Entrevistamos a Albert Triola, Country Leader de Oracle España. Gracias a su amplia experiencia en…

12 horas ago