Hoy en día en el mundo de la tecnología principalmente de los desarrolladores se habla mucho de la creación de contenedores, estos contenedores brindan muchas ventajas que las máquinas virtuales no tienen, la principal es que se pueden ejecutar desde cualquier plataforma (PC, Servidor, Cloud) y no depender del hardware o sistemas operativos donde el contenedor se ejecuta, así desarrollar, es más sencillo.

Una vez que tenemos nuestro contenedor creado y tenemos nuestro desarrollo listo, simplemente copiamos y almacenamos ese contenedor en cualquier dispositivo de almacenamiento y lo llevamos al servidor de producción que contenga los recursos informáticos para poder ejecutarlo, una tarea relativamente fácil y sencilla,  sin embargo, aquí estamos hablando de mover un contenedor, quizás hasta cinco o diez.

Pero ¿qué pasa cuando nuestro desarrollo es de más de cincuenta contenedores?, para esto necesitamos especificar los servidores y seleccionar adecuadamente los recursos informáticos que cada uno de estos requiere y así seleccionar el servidor donde se contendrá cada grupo, en este punto las tareas de migración de nuestro ambiente de desarrollo a producción se vuelve más complejo y definitivamente una tarea manual que lleva tiempo.

Para mover nuestros contenedores desde nuestro ambiente de desarrollo hacia el ambiente de producción, se requiere de una herramienta que permita mover y gestionar contenedores de manera automatizada, además que nos debe ayudar a gestionar los recursos informáticos.

En definición, Kubernetes es nuestro orquestador de recursos informáticos y gestor de nuestro clúster que requieren los contenedores para poder ejecutar las aplicaciones, mover los contenedores desde nuestro ambiente de desarrollo hacia nuestro ambiente de producción, sin importar si es en sitio o en la nube (AWS, Azure Google cloud Huawei cloud entre otros).