Kubernetes y Docker

Docker es una tecnología que crea un contenedor que permite ejecutar un entorno dentro de una máquina sin tener que virtualizarla. Esto es muy útil y muy potente ya que además de evitarte setups innecesarios el coste en recursos de la máquina es mucho menor que la virtualización.

Otro de los aspectos más interesantes que aporta Docker es lo sencillo que resulta el empaquetado y distribución de contenedores así como la automatización de su despliegue en cualquier entorno.

¿Qué es lo que sucede en la práctica? Que al final terminas utilizando varios contenedores en un mismo proyecto y necesitas poder organizarlos y ejecutarlos de una manera coherente de manera automática. Aquí es donde entra la orquestación de contenedores que ofrece Kubernetes.

Kubernetes es una tecnología de orquestación de paquetes que permite el autoarranque, autoescalado y autoreplicación de los contenedores Docker (y de otros). Es una tecnología líder de mercado -ahora mismo en 2018- desarrollada orginalmente por Google que aprovecha todo el conocimiento que tienen ellos en entornos de alto rendimiento. Docker tiene su propia tecnología para hacer esto (Docker Swarm), pero no han conseguido desbancar a Kubernetes.

La mayoría de los proyectos hoy en día requieren varios servicios separados, si quieres trabajar de manera óptima (y barata) te recomiendo utilizar Kubernetes con Docker para poder ahorrar y escalar al máximo de una manera sencilla.

Comentarios