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

Silicon Pulse: Titulares de la semana #33

Bienvenido a un nuevo episodio del podcast semanal Silicon Pulse, un espacio en el que…

2 horas ago

Los ingresos por productos de Snowflake superan los 900 millones de dólares

De los 942,1 millones de dólares que ingresó en el tercer trimestre, 900,3 millones corresponden…

10 horas ago

Check Point: 2024, récord en ciberataques con la IA como enemiga y aliada

“En 2024 se ha registrado un crecimiento exponencial en los ciberataques, con empresas de todo…

11 horas ago

Los ingresos trimestrales de NVIDIA aumentan un 94 %

Durante su trimestre más reciente acumuló un total de 35.100 millones de dólares.

12 horas ago

Sage concluye “un año de éxito”

Durante su ejercicio fiscal 2024 mejoró un 9 % los ingresos totales subyacentes, por encima…

13 horas ago

Inetum quiere duplicar su plantilla en Aragón

Ha estrenado oficinas en Zaragoza, está presente en el Parque Tecnológico Walqa y tiene previsto…

14 horas ago