Un poco de Historia
Kubernetes nace de la mano de google (denominación en clave, Proyecto Siete), es un proyecto 100% open-source y su utilidad es la automatización de los contenedores docker.
Como características principales:
- Autoescalado; nos permite un escalado de nuestras aplicaciones en función del uso de la CPU.
- Recuperación automática; realiza tareas de reinicio de los contenedores en caso de fallo o de reemplazo.
- Balanceo de Carga; equilibra la carga de los diferentes contenedores dentro de la infraestructura disponible.
- Rollbacks Automáticos; en la fase de despliegue de una aplicación, supervisa el estado y en caso de no ser satisfactorio revertirá el cambio de forma automática.
- Orquestación del Almacenamiento; es compatible con cualquier tipo de sistema de almacenamiento, en local (NFS, iSCSI, GLUSTER etc...) o utilizando cloud (AWS etc...)
Uso de Kubernetes
Podemos encontrar Kubernetes en casi todos los productos/arquitecturas que ofrecen PaaS, ya sean en infraestructuras On-Premise como en soluciones cloud, por poner unos ejemplos:
- On-Premise; puedes realizar la instalación de un cluster kubernetes en tu infraestructura virtual. (vmware, Openstack, etc...)
- Cloud; en casi todas las plataformas que ofrecen cloud como servicio (google container engine, Azure etc...)
Además de plataformas exclusivas para despliegues de aplicaciones en modelo PaaS como son Openshift y Rancher, que lo tienen integrado como parte de sus soluciones.
Sin duda es una buena opción conocer este orquestador de contenedores, ya que desde el cambio que se está produciendo en el despliegue de nuestras aplicaciones, es de vital importancia disponer de una herramienta que gestione/administre la cantidad de contenedores que se crean para nuestras aplicaciones.
Además decir que es el orquestador más común para los diferentes servicios cloud que ofrecen PaaS de hoy en día.
Os dejo un poco de documentación por sí queréis ampliar el conocimiento de este orquestador. Pincha aquí.