You are on page 1of 2

INTRODUCCIN A KUBERNETES

1. Curso de Docker Swarm, Kubernetes y CoreOS Fleet (Actualizado 2017)

2. Kubernetes

3. Introduccin a Kubernetes

Los contenedores han cambiado el modo en el que las aplicaciones son creadas,
distribuidas y desplegadas en data centers. Los contenedores proporcionan una
perfecta abstraccin para las aplicaciones en la forma de una imagen, que
contiene las dependencias necesarias en nico objecto. Las imgenes son fciles
de distribuir y ejecutar sobre motores de contenedores tales como docker y rkt.

Los contenedores ofrecen una solucin ms ligera a las mquinas virtuales como
solucin para aislar la ejecucin de aplicaciones. Esto permiten aislar el
performance, utilizacin de recursos y potabilidad entre plataformas. La facilidad
para construir y ejecutar contenedores ha liderado una nueva tendencia a la hora
de ejecutar aplicaciones. Esta nueva tendencia ha conllevado a la creacin de
herramientas robustas para la gestin de estos contenedores.

Definicin
Kubernetes es un framework automatizado para el despliegue, gestin y
escalabilidad de aplicaciones. Adems de opensource, Kubernetes es la esencia
de un proyecto interno de Google conocido como Borg, (ms adelante veremos
algunos detalles de Borg). Borg es un proyecto fruto del conocimiento y
experiencia adquirido durante una dcada en la gestin de aplicaciones a larga
escala.
Kubernetes proporciona una API y self-healing framework capaz de gestionar de
manera automtica problemas en mquinas (red, coredumps, kernel panics) y
despliegues de aplicaciones, logging y monitoreo.

Motivacin
Hasta hoy, aplicaciones y mquinas estaban muy ligadas cuando hablabamos de
los entornos de ejecucin. Esto motiv la bsqueda de nuevos sistemas ms
independientes, autnomos, robustos con necesidad de escalar en entornos
distribuidos.

Caractersticas
El core de Kubernetes gira entorno a una API para el despliegue de todo tipo de
software desde aplicaciones web, batch jobs y bases de datos. Esta API comn a
todos los componentes de kubernetes esta basada en un conjunto declarativo de
APIs y objetos para la configuracin de clusteres. Estos componentes nos
permiten especificar el estado deseado de un cluster.

En lugar de desplegar aplicaciones de manera manual en servidores, se especifica


el nmero de instancias que deben estar corriendo en cada momento. Para ello,
kubernetes ejecutar las acciones necesarias para asegurar que el cluster satisface
el estado deseado. Por ejemplo, s declaramos que queremos un cluster con 5
instancias que deben correr todo el tiempo, y en un momento dado una de ellas
falla en un nodo, kubernetes automticamente la desplegar en otro nodo distinto.

Kubernetes ayuda a automatizar la configuracin de aplicaciones en la forma de


service discovery y credenciales. Este tiene una vista general del cluster, lo que
significa que una vez las aplicaciones estn desplegadas, podemos saber su
estado incluso cuando fallan. La informacin de los servicios desplegados est
disponible a otras aplicaciones a travs de variables de entorno y DNSs, haciendo
ms sencillo localizar estas aplicaciones y comunicarse con otros servicios que
corren en el cluster.

You might also like