Las cookies nos permiten ofrecer nuestros servicios. Al utilizar nuestros servicios, aceptas el uso que hacemos de las cookies. Más Información. Aceptar

Qué es Kubernetes

Carlos Alvarez
  • Escrito por Carlos Alvarez el 19 de Junio de 2018
  • 1 min de lectura | DevOps
Qué es Kubernetes
El reproductor de video será cargado en breves instantes.

Evolución de Kubernetes

Kubernetes es un proyecto de software libre que nació en 2014, de la mano de Joe Beda, Craig McLuckie y Brendan Burns, todos ellos ingenieros de Google. Comenzaron desarrollando Kubernetes a partir de una herramienta interna de Google, llamada Borg. En poco tiempo tuvo bastante acogida, tanto que muchos otros ingenieros de Google comenzaron a trabajar sobre esta herramienta.

A mediados de 2015, aproximadamente, Google sacó Kubernetes a la luz, asociándose con The Linux Foundation, para promover el uso de esta herramienta como semilla. Esto quiere decir que muchos otros proyectos han hecho uso de Kubernetes para sacar sus propias herramientas, siendo el más famoso a día de hoy OpenShift de Red Hat, que provee una interfaz gráfica para gestionar todo Kubernetes.

Qué es Kubernetes

Kubernetes se entiende como un orquestador de contenedores. El engine de estos contenedores puede ser variable, ya que normalmente se emplea Docker, pero también se utiliza bastante CRI-O.

Lo que intenta solucionar Kubernetes, sobre todo, son los problemas ocasionados de los procesos manuales, que están involucrados en la implementación y escalabilidad de las aplicaciones que corremos en estos contenedores.

logo Qué es Kubernetes

Normalmente, en producción estas aplicaciones constan de varios contenedores, que pueden estar alojados en distintos hosts de servidores y no tenemos por qué tener visibilidad directa con ellos. Con Kubernetes se pueden crear servicios de aplicaciones que abarcan varios contenedores, se pueden programar en un cluster, escalar y administrar el estado de dichos contenedores.

Entonces, con Kubernetes lo que se trata de solucionar es el problema de proliferación de contenedores, porque podemos mantener el número de contenedores que queremos, podemos escalarlo en caso de necesidad o podemos reducirlo en caso de que ya no hagan falta.

Soluciones que ofrece Kubernetes

Entre las soluciones que ofrece Kubernetes destacamos las siguientes:

  • Orquestar contenedores en varios hosts.
  • Optimizar el consumo de los recursos de hardware.
  • Controlar y automatizar las implementaciones y actualizaciones de las aplicaciones implementadas.
  • Añadir almacenamiento para ejecutar aplicaciones con estado.
  • Escalar aplicaciones de contenedores o aumentar sobre la marcha los recursos que están consumiendo los mismos.
  • Administrar servicios de forma declarativa, garantizando así que las aplicaciones implementadas siempre se ejecuten en el mismo nodo en el que se implementaron.
  • Realizar comprobaciones de estado y de auto regeneración de las aplicaciones con ubicación, reinicio, replicación y escalamiento automático.
Resumiendo, Kubernetes es realmente un paso más allá, una evolución, de lo que serían los contenedores, lo que sería Docker.

Otras herramientas similares a Kubernetes

Kubernetes no es la única herramienta de este tipo en el mercado, aunque si es la más utilizada. Existen otras alternativas como pueden ser:

  • Docker Swarm: Es la solución nativa de Docker. Históricamente Kubernetes salió antes que Docker Swarm y al principio Docker no daba soporte para Kubernetes. Pasados unos años se vieron obligados a dar soporte nativo porque el mercado que acaparaba Kubernetes era mucho mayor que el de Docker Swarm.
  • Marathon: Es un orquestador de Mesos, y es la segunda alternativa más famosa.

Estas son algunas de las empresas que ya confían en OpenWebinars

Profesores y profesionales

Nuestros docentes son profesionales que trabajan día a día en la materia que imparten

Conviértete en profesor de OpenWebinars