Kubernetes explicado: qué es y por qué acompaña a Docker

Vista aérea de un buque de carga en el océano

Si ya entendiste Docker, la pregunta natural es: ¿qué pasa cuando tengo cientos de contenedores corriendo a la vez? Ahí entra Kubernetes.

1. El problema que resuelve

Un contenedor Docker suelto es fácil de manejar. Pero una aplicación real puede necesitar cientos de contenedores corriendo a la vez, distribuidos en varios servidores, que hay que iniciar, reiniciar si fallan, y escalar según la demanda. Hacer esto a mano es inviable a partir de cierto tamaño.

2. Qué hace Kubernetes, en criollo

Es un «director de orquesta» para contenedores: vos le decís «quiero que esta aplicación tenga siempre 5 copias corriendo», y Kubernetes se encarga de mantenerlo así automáticamente. Si un contenedor se cae, Kubernetes levanta uno nuevo sin que nadie tenga que intervenir manualmente. Si hay mucho tráfico, puede levantar más copias solo.

3. Docker y Kubernetes no compiten, se complementan

Docker empaqueta la aplicación en contenedores; Kubernetes coordina muchos de esos contenedores a gran escala. Es como la diferencia entre saber armar una caja de envío (Docker) y coordinar toda una flota de camiones que las transportan (Kubernetes).

4. ¿Necesitás aprenderlo?

Si trabajás en una startup chica o un proyecto personal, probablemente no lo necesites todavía: es una herramienta pensada para escala. Se vuelve relevante cuando una aplicación crece lo suficiente como para necesitar múltiples servidores coordinados, o cuando buscás trabajo en empresas medianas/grandes con infraestructura compleja, donde aparece seguido en los requisitos.

5. La curva de aprendizaje, sin endulzarla

Es bastante más compleja que Docker. Tiene su propio vocabulario (pods, deployments, services) y conceptos que llevan semanas asimilar bien. No es algo para aprender en un fin de semana, pero tampoco hace falta dominarlo a fondo para empezar a ser útil con él en un equipo.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *