¿Qué es Kubernetes y por qué se utiliza?

Kubernetes, también conocido como K8s, es un sistema de código abierto para automatizar el despliegue, el escalado y la gestión de aplicaciones en contenedores.

Agrupa los contenedores que componen una aplicación en unidades lógicas para facilitar la gestión y el descubrimiento. Kubernetes en base a 15 años de experiencia en la ejecución de cargas de trabajo de producción en Google, combinado con las mejores ideas y prácticas de la comunidad.

K8s organiza aplicaciones en contenedores para que se ejecuten en un clúster de hosts. El sistema K8s automatiza la implementación y la gestión de aplicaciones nativas de la nube utilizando infraestructura local o plataformas de nube pública.

¿Es lo mismo K8s que Docker?

La diferencia entre los dos es que Docker trata de empaquetar aplicaciones en contenedores en un solo nodo y K8s está destinado a ejecutarlos en un clúster.

¿K8s es hardware o software?

Debido a estas y otras capacidades, K8s también es un elemento clave de las infraestructuras definidas por software. El objetivo de usar K8s es aprovechar al máximo los beneficios de los contenedores, una forma de virtualización del sistema operativo que puede ejecutar cualquier cosa, desde pequeños microservicios hasta aplicaciones completas.

¿Cuándo debemos usar K8s?

K8s está diseñado para desplegarse en cualquier lugar, lo que significa que puede usarlo en una nube privada, una nube pública o una nube híbrida. Esto le permite conectarse con sus usuarios sin importar dónde se encuentren, con una mayor seguridad como una ventaja adicional. Kubernetes le permite eludir el posible problema de ‘vendor l0ck-in’.