20

Aprende todo sobre Servidores y Contenedores con Google Kubernetes Engine

211925Puntos

hace 5 años

Deploy. Para muchos, el momento más complicado al construir aplicaciones. Para otros, el momento que más agradecemos.

Gracias a la automatización que nos otorgan servicios como Google Cloud Platform, no solo vamos a mejorar la dificultad, también el tiempo y la seguridad de nuestros despliegues a producción.

Deploy

Historia de los Servidores: Bare Metal

Hace mucho mucho tiempo, en esa época de cuando los dinosaurios aterrorizaban la web, los humanos solíamos preocupamos por cosas llamadas “servidores”. Sí, servidores físicos, esas computadoras gigantes que debíamos esconder en el garaje para montar una página web.

Todo era un caos. En vez de trabajar en nuestras grandiosas aplicaciones para cambiar el mundo, debíamos gastar tiempo haciendo el mantenimiento de estas máquinas.

Virtual Machines

Afortunadamente, la web ya no es tan oscura. Hemos virtualizado los servidores. En otras palabras, alguien más se encarga de hacer el mantenimiento del hardware. Los servidores ya no viven en nuestras casas y tenemos acceso a los servicios que necesitamos dónde necesitemos gracias a internet.

Pero NO es suficiente.

El uso de máquinas virtuales sigue dando problemas. Las actualizaciones, parches de seguridad y muchos otros aspectos de los sistemas operativos siguen necesitando nuestro tiempo y administración.

Containers

Containers

Los contenedores son el funcionamiento más óptimo de cualquier aplicación. Nuestros proveedores se encargaran de la infraestructura y el sistema operativo, nosotros nos preocupamos únicamente por administrar nuestras aplicaciones y sus dependencias: lenguajes de programación, frameworks, logs, etc.

Gracias a Docker podemos manejar muy fácilmente el desarrollo con contenedores. Además, este formato nos ayudará con despliegue de contenedores a producción.

Aprende a crear tu contenedor de Docker para tu aplicación en Django.

Kubernetes

Este sistema nos permite llevar aplicaciones a la nube, dividiéndolas en microservicios(diferentes servicios de nuestra aplicación disponibles y desplegados en una arquitectura de contenedores). Además, es una solución open source, tenemos acceso al código fuente y podemos realizar aportes.

Gracias a Kubernetes podemos administrar las versiones de nuestra aplicación y sus microservicios de una forma rápida y sencilla. Este proceso lo llamamos orquestación.

Kubernetes Engine

Kubernetes Engine es la solución administrada de Google en la plataforma de Google Cloud Platform. Su función es administrar el cluster de máquinas, la instalación de los clientes y todos los procesos necesarios para el despliegue de nuestras aplicaciones. Google se encarga de todo.

Esta herramienta tiene las siguientes funcionalidades:

  • Formato Docker: Nuestras máquinas y contenedores deben usar este formato para poder ser desplegadas.
  • Auto-escalado: La performance de nuestra aplicación no se verá afectada cuando muchísimos usuarios entren a nuestra aplicación. Vamos a soportar toda esta carga sin necesidad de generar máquinas virtuales a mano.
  • Stackdriver: Nos ayuda a entender y monitorear muy fácilmente lo que está pasando en la infraestructura: logs, alertas, monitoreo de la CPU y la memoria, etc.
  • Cloud VPN: Nos permite tener una nube híbrida con la cual tendremos nuestros datos y aplicaciones segregados en la nube, utilizando información de nuestros servidores locales.
  • Cloud IAM: Administración de usuarios gracias al soporte de autenticación de Google. Podemos asignar permisos y roles de: lectura, escritura y administración sobre nuestro cluster.

Gracias a Kubernetes Engine tenemos actualizaciones y reparaciones automáticas, un registro privado de nuestros contenedores, versiones rápidas y uniformes, y soporte para GPU.

Conclusión:

Esto es sólo el comienzo de un mundo entero de posibilidades para desplegar tu aplicación. Te invito a tomar el Curso de Google Kubernetes Engine con Xertica, donde aprederas mucho más sobre cómo funcionan Kubernetes y Kubernetes Engine.

#NuncaParesDeAprender 🤓💚

Juan
Juan
juandc

211925Puntos

hace 5 años

Todas sus entradas
Escribe tu comentario
+ 2
2
23544Puntos

Increíble Post pero mi duda es ¿cómo es la ruta de aprendizaje, es decir, qué es lo mínimo que debo de saber y por dónde empiezo? Espero puedan ayudarme, me interesa mucho saber esto.

2
2464Puntos
5 años

Platzi tiene un curso de kubernetes y uno de google kubernetes engine. saludos

1
23544Puntos
5 años

Muchísimas gracias 🙏🏽

2

Buen artículo, nada como aprender de servidores.